./test/test_instr.c
./test/test_inwstr.c
./test/test_opaque.c
+./test/test_setupterm.c
./test/test_vid_puts.c
./test/test_vidputs.c
./test/testaddch.c
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: NEWS,v 1.2441 2015/06/14 01:13:38 tom Exp $
+-- $Id: NEWS,v 1.2448 2015/06/27 23:12:23 tom Exp $
-------------------------------------------------------------------------------
This is a log of changes that ncurses has gone through since Zeyd started
Changes through 1.9.9e did not credit all contributions;
it is not possible to add this information.
+20150627
+ + modify configure script to remove deprecated ABI 5 symbols when
+ building ABI 6.
+ + add symbols _nc_Default_Field, _nc_Default_Form, _nc_has_mouse to
+ map-files, but marked as deprecated so that they can easily be
+ suppressed from ABI 6 builds (Debian #788610).
+ + comment-out "screen.xterm" entry, and inherit screen.xterm-256color
+ from xterm-new (report by Richard Birkett) -TD
+ + modify read_entry.c to set the error-return to -1 if no terminal
+ databases were found, as documented for setupterm.
+ + add test_setupterm.c to demonstrate normal/error returns from the
+ setupterm and restartterm functions.
+ + amend cleanup change from 20110813 which removed redundant definition
+ of ret_error, etc., from tinfo_driver.c, to account for the fact that
+ it should return a bool rather than int (report/analysis by Johannes
+ Schindelin).
+
20150613
+ fix overflow warning for OSX with lib_baudrate.c (cf: 20010630).
+ modify script used to generate map/sym files to mark 5.9.20150530 as
-5:0:9 6.0 20150613
+5:0:9 6.0 20150627
dnl
dnl Author: Thomas E. Dickey 1995-on
dnl
-dnl $Id: aclocal.m4,v 1.758 2015/06/06 23:27:44 tom Exp $
+dnl $Id: aclocal.m4,v 1.759 2015/06/27 23:10:38 tom Exp $
dnl Macros used in NCURSES auto-configuration script.
dnl
dnl These macros are maintained separately from NCURSES. The copyright on
AC_SUBST(LIB_PREFIX)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_LIB_RULES version: 81 updated: 2015/04/30 20:30:18
+dnl CF_LIB_RULES version: 82 updated: 2015/06/27 19:09:23
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
if test -n "${cf_cv_abi_version}" && test "x${cf_cv_abi_version}" != "x5"
then
cf_sed_options="$cf_sed_options -e \"s/NCURSES\\([[WT]]\\+\\)\?_/NCURSES\\1${cf_cv_abi_version}_/g\""
+ cf_sed_options="$cf_sed_options -e \"/deprecated in ABI${cf_cv_abi_version}/d\""
fi
if test "x$WILDCARD_SYMS" = xno
#! /bin/sh
-# From configure.in Revision: 1.617 .
+# From configure.in Revision: 1.618 .
# Guess values for system-dependent variables and create Makefiles.
# Generated by Autoconf 2.52.20141204.
#
if test -n "$RESULTING_SYMS"
then
cf_filter_syms=$cf_dft_filter_syms
- if test "$cf_filter_syms" = yes
- then
- test -n "$verbose" && echo " will map symbols to ABI=$cf_cv_abi_version" 1>&6
-
-echo "${as_me:-configure}:22282: testing will map symbols to ABI=$cf_cv_abi_version ..." 1>&5
+ test -n "$verbose" && echo " will map symbols to ABI=$cf_cv_abi_version" 1>&6
- cf_filter_syms=yes
- else
- test -n "$verbose" && echo " will map symbols to default ABI" 1>&6
+echo "${as_me:-configure}:22280: testing will map symbols to ABI=$cf_cv_abi_version ..." 1>&5
-echo "${as_me:-configure}:22288: testing will map symbols to default ABI ..." 1>&5
-
- fi
fi
if test "x$WILDCARD_SYMS" = xno
: ${CONFIG_STATUS=./config.status}
ac_clean_files_save=$ac_clean_files
ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ echo "$as_me:22391: creating $CONFIG_STATUS" >&5
+{ echo "$as_me:22382: creating $CONFIG_STATUS" >&5
echo "$as_me: creating $CONFIG_STATUS" >&6;}
cat >$CONFIG_STATUS <<_ACEOF
#! $SHELL
echo "$ac_cs_version"; exit 0 ;;
--he | --h)
# Conflict between --help and --header
- { { echo "$as_me:22567: error: ambiguous option: $1
+ { { echo "$as_me:22558: 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;}
ac_need_defaults=false;;
# This is an error.
- -*) { { echo "$as_me:22586: error: unrecognized option: $1
+ -*) { { echo "$as_me:22577: 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;}
"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:22704: error: invalid argument: $ac_config_target" >&5
+ *) { { echo "$as_me:22695: error: invalid argument: $ac_config_target" >&5
echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
{ (exit 1); exit 1; }; };;
esac
esac
if test x"$ac_file" != x-; then
- { echo "$as_me:23159: creating $ac_file" >&5
+ { echo "$as_me:23150: creating $ac_file" >&5
echo "$as_me: creating $ac_file" >&6;}
rm -f "$ac_file"
fi
-) echo $tmp/stdin ;;
[\\/$]*)
# Absolute (can't be DOS-style, as IFS=:)
- test -f "$f" || { { echo "$as_me:23177: error: cannot find input file: $f" >&5
+ test -f "$f" || { { echo "$as_me:23168: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
echo $f;;
echo $srcdir/$f
else
# /dev/null tree
- { { echo "$as_me:23190: error: cannot find input file: $f" >&5
+ { { echo "$as_me:23181: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
fi;;
if test -n "$ac_seen"; then
ac_used=`grep '@datarootdir@' $ac_item`
if test -z "$ac_used"; then
- { echo "$as_me:23206: WARNING: datarootdir was used implicitly but not set:
+ { echo "$as_me:23197: 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;}
fi
ac_seen=`grep '${datarootdir}' $ac_item`
if test -n "$ac_seen"; then
- { echo "$as_me:23215: WARNING: datarootdir was used explicitly but not set:
+ { echo "$as_me:23206: 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_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:23252: WARNING: Variable $ac_name is used but was not set:
+ { echo "$as_me:23243: 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;}
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:23263: WARNING: Some variables may not be substituted:
+ { echo "$as_me:23254: WARNING: Some variables may not be substituted:
$ac_seen" >&5
echo "$as_me: WARNING: Some variables may not be substituted:
$ac_seen" >&2;}
* ) ac_file_in=$ac_file.in ;;
esac
- test x"$ac_file" != x- && { echo "$as_me:23312: creating $ac_file" >&5
+ test x"$ac_file" != x- && { echo "$as_me:23303: creating $ac_file" >&5
echo "$as_me: creating $ac_file" >&6;}
# First look for the input files in the build tree, otherwise in the
-) echo $tmp/stdin ;;
[\\/$]*)
# Absolute (can't be DOS-style, as IFS=:)
- test -f "$f" || { { echo "$as_me:23323: error: cannot find input file: $f" >&5
+ test -f "$f" || { { echo "$as_me:23314: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
echo $f;;
echo $srcdir/$f
else
# /dev/null tree
- { { echo "$as_me:23336: error: cannot find input file: $f" >&5
+ { { echo "$as_me:23327: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
fi;;
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:23394: $ac_file is unchanged" >&5
+ { echo "$as_me:23385: $ac_file is unchanged" >&5
echo "$as_me: $ac_file is unchanged" >&6;}
else
ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
if test -n "${cf_cv_abi_version}" && test "x${cf_cv_abi_version}" != "x5"
then
cf_sed_options="$cf_sed_options -e \"s/NCURSES\\([WT]\\+\\)\?_/NCURSES\\1${cf_cv_abi_version}_/g\""
+ cf_sed_options="$cf_sed_options -e \"/deprecated in ABI${cf_cv_abi_version}/d\""
fi
if test "x$WILDCARD_SYMS" = xno
(cygdll|msysdll|mingw)
test "x$with_shared_cxx" = xno && test -n "$verbose" && echo " overriding CXX_MODEL to SHARED" 1>&6
-echo "${as_me:-configure}:23731: testing overriding CXX_MODEL to SHARED ..." 1>&5
+echo "${as_me:-configure}:23723: testing overriding CXX_MODEL to SHARED ..." 1>&5
with_shared_cxx=yes
;;
dnl
dnl Author: Thomas E. Dickey 1995-on
dnl
-dnl $Id: configure.in,v 1.617 2015/06/06 21:29:03 tom Exp $
+dnl $Id: configure.in,v 1.618 2015/06/27 22:59:56 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.52.20030208)
-AC_REVISION($Revision: 1.617 $)
+AC_REVISION($Revision: 1.618 $)
AC_INIT(ncurses/base/lib_initscr.c)
AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin)
if test -n "$RESULTING_SYMS"
then
cf_filter_syms=$cf_dft_filter_syms
- if test "$cf_filter_syms" = yes
- then
- CF_VERBOSE(will map symbols to ABI=$cf_cv_abi_version)
- cf_filter_syms=yes
- else
- CF_VERBOSE(will map symbols to default ABI)
- fi
+ CF_VERBOSE(will map symbols to ABI=$cf_cv_abi_version)
fi
if test "x$WILDCARD_SYMS" = xno
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: dist.mk,v 1.1056 2015/06/13 10:39:10 tom Exp $
+# $Id: dist.mk,v 1.1057 2015/06/26 08:39:24 tom Exp $
# Makefile for creating ncurses distributions.
#
# This only needs to be used directly as a makefile by developers, but
# These define the major/minor/patch versions of ncurses.
NCURSES_MAJOR = 6
NCURSES_MINOR = 0
-NCURSES_PATCH = 20150613
+NCURSES_PATCH = 20150627
# We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
# Report bugs and new terminal descriptions to
# bug-ncurses@gnu.org
#
-# $Revision: 1.545 $
-# $Date: 2015/05/30 20:30:55 $
+# $Revision: 1.546 $
+# $Date: 2015/06/27 18:57:21 $
#
# 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
bce, use=xterm+256setaf, use=screen-s,
screen.xterm-256color|GNU Screen with xterm using 256 colors,
- use=xterm+256setaf, use=screen.xterm,
+ use=xterm+256setaf, use=screen.xterm-new,
screen.konsole-256color|GNU Screen with konsole using 256 colors,
use=xterm+256setaf, use=screen.konsole,
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,
-screen.xterm|screen for modern xterm,
- use=screen.xterm-new,
+#:screen.xterm|screen for modern xterm,
+#: use=screen.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,
# + remove spurious "%;" from st entry (report by Daniel Pitts) -TD
# + add vte-2014, update vte to use that -TD
#
+# 2015-6-27
+# + comment-out "screen.xterm" entry, and inherit screen.xterm-256color
+# from xterm-new (report by Richard Birkett) -TD
+#
######## SHANTIH! SHANTIH! SHANTIH!
/****************************************************************************
- * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2012,2015 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#include <curses.priv.h>
-MODULE_ID("$Id: lib_restart.c,v 1.15 2012/12/08 20:40:06 tom Exp $")
+MODULE_ID("$Id: lib_restart.c,v 1.16 2015/06/27 18:12:15 tom Exp $")
NCURSES_EXPORT(int)
NCURSES_SP_NAME(restartterm) (NCURSES_SP_DCLx
TERMINAL *new_term = 0;
#endif
+ START_TRACE();
T((T_CALLED("restartterm(%p,%s,%d,%p)"),
(void *) SP_PARM,
termp,
NCURSES_EXPORT(int)
restartterm(NCURSES_CONST char *termp, int filenum, int *errret)
{
+ START_TRACE();
return NCURSES_SP_NAME(restartterm) (CURRENT_SCREEN, termp, filenum, errret);
}
#endif
/****************************************************************************
- * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2014,2015 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
****************************************************************************/
/*
- * $Id: curses.priv.h,v 1.546 2014/11/01 13:52:34 tom Exp $
+ * $Id: curses.priv.h,v 1.547 2015/06/27 01:22:16 tom Exp $
*
* curses.priv.h
*
extern NCURSES_EXPORT(int) _nc_ripoffline(int, int(*)(WINDOW*, int));
/* lib_setup.c */
+#define SETUP_FAIL ERR
#define ret_error(code, fmt, arg) if (errret) {\
*errret = code;\
- returnCode(ERR);\
+ returnCode(SETUP_FAIL);\
} else {\
fprintf(stderr, fmt, arg);\
exit(EXIT_FAILURE);\
#define ret_error0(code, msg) if (errret) {\
*errret = code;\
- returnCode(ERR);\
+ returnCode(SETUP_FAIL);\
} else {\
fprintf(stderr, msg);\
exit(EXIT_FAILURE);\
#include <locale.h>
#endif
-MODULE_ID("$Id: lib_setup.c,v 1.162 2015/05/17 17:15:03 tom Exp $")
+MODULE_ID("$Id: lib_setup.c,v 1.164 2015/06/27 18:10:55 tom Exp $")
/****************************************************************************
*
termp->Filedes = (short) Filedes;
termp->_termname = strdup(tname);
} else {
- ret_error0(TGETENT_ERR,
+ ret_error0(errret ? *errret : TGETENT_ERR,
"Could not find any driver to handle this terminal.\n");
}
#else
NCURSES_EXPORT(int)
setupterm(NCURSES_CONST char *tname, int Filedes, int *errret)
{
+ START_TRACE();
return _nc_setupterm(tname, Filedes, errret, FALSE);
}
/****************************************************************************
- * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2014,2015 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#include <tic.h>
-MODULE_ID("$Id: read_entry.c,v 1.128 2014/06/14 22:30:41 tom Exp $")
+MODULE_ID("$Id: read_entry.c,v 1.129 2015/06/27 16:16:40 tom Exp $")
#define TYPE_CALLOC(type,elts) typeCalloc(type, (unsigned)(elts))
const char *path;
_nc_first_db(&state, &offset);
+ code = TGETENT_ERR;
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);
/****************************************************************************
- * Copyright (c) 2008-2013,2014 Free Software Foundation, Inc. *
+ * Copyright (c) 2008-2014,2015 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
# endif
#endif
-MODULE_ID("$Id: tinfo_driver.c,v 1.39 2014/09/27 21:58:57 tom Exp $")
+MODULE_ID("$Id: tinfo_driver.c,v 1.40 2015/06/27 01:20:41 tom Exp $")
/*
* SCO defines TIOCGSIZE and the corresponding struct. Other systems (SunOS,
return "tinfo";
}
+#undef SETUP_FAIL
+#define SETUP_FAIL FALSE
+
static bool
drv_CanHandle(TERMINAL_CONTROL_BLOCK * TCB, const char *tname, int *errret)
{
TERMINAL *termp;
SCREEN *sp;
+ START_TRACE();
T((T_CALLED("tinfo::drv_CanHandle(%p)"), TCB));
assert(TCB != 0 && tname != 0);
if ((pthread_self) && (pthread_kill) && (pthread_equal))
_nc_globals.read_thread = pthread_self();
# endif
- n = read(sp->_ifd, &c2, (size_t) 1);
+ n = (int) read(sp->_ifd, &c2, (size_t) 1);
#if USE_PTHREADS_EINTR
_nc_globals.read_thread = 0;
#endif
-ncurses6 (6.0+20150613) unstable; urgency=low
+ncurses6 (6.0+20150627) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 13 Jun 2015 06:39:10 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Fri, 26 Jun 2015 04:39:24 -0400
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.0+20150613) unstable; urgency=low
+ncurses6 (6.0+20150627) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 13 Jun 2015 06:39:10 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Fri, 26 Jun 2015 04:39:24 -0400
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.0+20150613) unstable; urgency=low
+ncurses6 (6.0+20150627) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 13 Jun 2015 06:39:10 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Fri, 26 Jun 2015 04:39:24 -0400
ncurses6 (5.9-20120608) unstable; urgency=low
-; $Id: mingw-ncurses.nsi,v 1.109 2015/06/13 10:39:10 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.110 2015/06/26 08:39:24 tom Exp $\r
\r
; TODO add examples\r
; TODO bump ABI to 6\r
!define VERSION_MAJOR "6"\r
!define VERSION_MINOR "0"\r
!define VERSION_YYYY "2015"\r
-!define VERSION_MMDD "0613"\r
+!define VERSION_MMDD "0627"\r
!define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}\r
\r
!define MY_ABI "5"\r
Summary: shared libraries for terminal handling
Name: mingw32-ncurses6
Version: 6.0
-Release: 20150613
+Release: 20150627
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
-# $Id: ncurses.map,v 1.33 2015/06/13 21:23:49 tom Exp $
+# $Id: ncurses.map,v 1.34 2015/06/27 22:28:50 tom Exp $
# script for shared library symbol-versioning using ld
#
# This file was generated by ncu-mapsyms
TYPE_IPV4;
TYPE_NUMERIC;
TYPE_REGEXP;
+ _nc_Default_Field; # deprecated in ABI6
+ _nc_Default_Form; # deprecated in ABI6
_nc_free_and_exit;
+ _nc_has_mouse; # deprecated in ABI6
_nc_panelhook;
_nc_ripoffline;
addch;
_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_do_color;
_nc_expanded;
_nc_freewin;
- _nc_has_mouse;
_nc_hash_map;
_nc_lib_traceatr;
_nc_lib_tracedmp;
Summary: shared libraries for terminal handling
Name: ncurses6
Version: 6.0
-Release: 20150613
+Release: 20150627
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
-# $Id: ncurses.sym,v 1.22 2015/06/13 21:04:35 tom Exp $
+# $Id: ncurses.sym,v 1.23 2015/06/27 22:30:44 tom Exp $
# script for shared library symbol-visibility using libtool
#
# This file was generated by ncu-mapsyms
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --enable-sp-funcs --with-termlib --with-trace
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --enable-wgetch-events --with-hashed-db --with-termlib --with-ticlib --with-trace
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --with-broken_linker --with-termlib --with-ticlib --with-trace
-# Configure options (6.0.20150606)
+# Configure options (6.0.current)
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-getcap --enable-getcap-cache --enable-hard-tabs --enable-termcap --with-termlib --with-trace
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --enable-interop --with-termlib --with-trace
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --enable-sp-funcs --with-broken_linker --with-hashed-db --with-termlib --with-trace
TYPE_NUMERIC
TYPE_REGEXP
UP
+_nc_Default_Field
+_nc_Default_Form
_nc_access
_nc_add_to_try
_nc_align_termtype
_nc_getenv_num
_nc_globals
_nc_handle_sigwinch
+_nc_has_mouse
_nc_head
_nc_home_terminfo
_nc_info_hash_table
-# $Id: ncursest.map,v 1.28 2015/06/13 22:19:28 tom Exp $
+# $Id: ncursest.map,v 1.29 2015/06/27 22:23:14 tom Exp $
# script for shared library symbol-versioning using ld
#
# This file was generated by ncu-mapsyms
TYPE_REGEXP;
_nc_COLORS;
_nc_COLOR_PAIRS;
+ _nc_Default_Field; # deprecated in ABI6
+ _nc_Default_Form; # deprecated in ABI6
_nc_ESCDELAY;
_nc_free_and_exit;
+ _nc_has_mouse; # deprecated in ABI6
_nc_optimize_enable;
_nc_panelhook;
_nc_ripoffline;
_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_expanded;
_nc_fifo_dump;
_nc_freewin;
- _nc_has_mouse;
_nc_hash_map;
_nc_insert_ch;
_nc_linedump;
-# $Id: ncursest.sym,v 1.23 2015/06/13 21:13:29 tom Exp $
+# $Id: ncursest.sym,v 1.24 2015/06/27 22:30:00 tom Exp $
# script for shared library symbol-visibility using libtool
#
# This file was generated by ncu-mapsyms
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --enable-sp-funcs --enable-weak-symbols --with-pthread --with-termlib --with-trace
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --enable-weak-symbols --enable-wgetch-events --with-hashed-db --with-pthread --with-termlib --with-ticlib --with-trace
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --enable-weak-symbols --with-broken_linker --with-pthread --with-termlib --with-ticlib --with-trace
-# Configure options (6.0.20150606)
+# Configure options (6.0.current)
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-getcap --enable-getcap-cache --enable-hard-tabs --enable-termcap --enable-weak-symbols --with-pthread --with-termlib --with-trace
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --enable-interop --enable-weak-symbols --with-pthread --with-termlib --with-trace
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --enable-reentrant --enable-sp-funcs --enable-weak-symbols --with-pthread --with-termlib --with-trace
_nc_COLORS
_nc_COLOR_PAIRS
_nc_COLS
+_nc_Default_Field
+_nc_Default_Form
_nc_ESCDELAY
_nc_LINES
_nc_TABSIZE
_nc_getenv_num
_nc_globals
_nc_handle_sigwinch
+_nc_has_mouse
_nc_head
_nc_home_terminfo
_nc_infotocap
-# $Id: ncursestw.map,v 1.29 2015/06/13 22:17:50 tom Exp $
+# $Id: ncursestw.map,v 1.30 2015/06/27 22:27:57 tom Exp $
# script for shared library symbol-versioning using ld
#
# This file was generated by ncu-mapsyms
TYPE_REGEXP;
_nc_COLORS;
_nc_COLOR_PAIRS;
+ _nc_Default_Field; # deprecated in ABI6
+ _nc_Default_Form; # deprecated in ABI6
_nc_ESCDELAY;
_nc_free_and_exit;
+ _nc_has_mouse; # deprecated in ABI6
_nc_optimize_enable;
_nc_panelhook;
_nc_ripoffline;
_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_expanded;
_nc_fifo_dump;
_nc_freewin;
- _nc_has_mouse;
_nc_hash_map;
_nc_init_wacs;
_nc_insert_ch;
-# $Id: ncursestw.sym,v 1.21 2015/06/13 21:18:19 tom Exp $
+# $Id: ncursestw.sym,v 1.22 2015/06/27 22:29:28 tom Exp $
# script for shared library symbol-visibility using libtool
#
# This file was generated by ncu-mapsyms
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --enable-sp-funcs --enable-weak-symbols --enable-widec --with-pthread --with-termlib --with-trace
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --enable-weak-symbols --enable-wgetch-events --enable-widec --with-hashed-db --with-pthread --with-termlib --with-ticlib --with-trace
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --enable-weak-symbols --enable-widec --with-broken_linker --with-pthread --with-termlib --with-ticlib --with-trace
-# Configure options (6.0.20150606)
+# Configure options (6.0.current)
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-getcap --enable-getcap-cache --enable-hard-tabs --enable-termcap --enable-weak-symbols --enable-widec --with-pthread --with-termlib --with-trace
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --enable-interop --enable-weak-symbols --enable-widec --with-pthread --with-termlib --with-trace
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --enable-reentrant --enable-sp-funcs --enable-weak-symbols --enable-widec --with-pthread --with-termlib --with-trace
_nc_COLORS
_nc_COLOR_PAIRS
_nc_COLS
+_nc_Default_Field
+_nc_Default_Form
_nc_ESCDELAY
_nc_LINES
_nc_TABSIZE
_nc_getenv_num
_nc_globals
_nc_handle_sigwinch
+_nc_has_mouse
_nc_head
_nc_home_terminfo
_nc_infotocap
-# $Id: ncursesw.map,v 1.35 2015/06/13 23:07:40 tom Exp $
+# $Id: ncursesw.map,v 1.36 2015/06/27 22:26:52 tom Exp $
# script for shared library symbol-versioning using ld
#
# This file was generated by ncu-mapsyms
TYPE_IPV4;
TYPE_NUMERIC;
TYPE_REGEXP;
+ _nc_Default_Field; # deprecated in ABI6
+ _nc_Default_Form; # deprecated in ABI6
_nc_free_and_exit;
+ _nc_has_mouse; # deprecated in ABI6
_nc_panelhook;
_nc_ripoffline;
addch;
_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_do_color;
_nc_expanded;
_nc_freewin;
- _nc_has_mouse;
_nc_hash_map;
_nc_make_oldhash;
_nc_makenew;
-# $Id: ncursesw.sym,v 1.23 2015/06/13 21:09:14 tom Exp $
+# $Id: ncursesw.sym,v 1.24 2015/06/27 22:30:29 tom Exp $
# script for shared library symbol-visibility using libtool
#
# This file was generated by ncu-mapsyms
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --enable-sp-funcs --enable-widec --with-termlib --with-trace
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --enable-wgetch-events --enable-widec --with-hashed-db --with-termlib --with-ticlib --with-trace
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --enable-widec --with-broken_linker --with-termlib --with-ticlib --with-trace
-# Configure options (6.0.20150606)
+# Configure options (6.0.current)
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-getcap --enable-getcap-cache --enable-hard-tabs --enable-termcap --enable-widec --with-termlib --with-trace
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --enable-interop --enable-widec --with-termlib --with-trace
# --disable-getcap --disable-leaks --disable-root-environ --disable-termcap --enable-hard-tabs --enable-sp-funcs --enable-widec --with-broken_linker --with-hashed-db --with-termlib --with-trace
TYPE_NUMERIC
TYPE_REGEXP
UP
+_nc_Default_Field
+_nc_Default_Form
_nc_access
_nc_add_to_try
_nc_align_termtype
_nc_getenv_num
_nc_globals
_nc_handle_sigwinch
+_nc_has_mouse
_nc_head
_nc_home_terminfo
_nc_info_hash_table
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: README,v 1.50 2015/05/02 20:47:29 tom Exp $
+-- $Id: README,v 1.51 2015/06/27 19:41:39 tom Exp $
-------------------------------------------------------------------------------
The programs in this directory are used to test and demonstrate ncurses.
These programs provide examples of use, but do not comprise a complete set of
tests. Here is a list of library externals, noting those that are used:
+
libform:
-------
TYPE_ALNUM test: demo_forms
newpad test: edit_field ncurses testcurs
newpad_sp lib: ncurses
newscr lib: ncurses
-newterm test: demo_altkeys ditto dots_mvcur filter foldkeys gdc key_names keynames
+newterm test: demo_altkeys ditto dots_mvcur filter foldkeys gdc key_names keynames test_setupterm
newterm_sp -
newwin test: cardfile chgat clip_printw demo_defkey demo_forms demo_keyok demo_menus demo_panels ditto edit_field firstlast inch_wide inchs ins_wide insdelln inserts knight movewindow ncurses newdemo redraw savescreen test_add_wchstr test_addchstr test_addstr test_addwstr test_get_wstr test_getstr test_instr test_inwstr test_opaque testcurs xmas
newwin_sp lib: ncurses
refresh test: blue bs demo_defkey demo_forms demo_keyok demo_menus demo_panels dots_curses echochar filter firstlast form_driver_w gdc hanoi hashtest lrtest movewindow ncurses savescreen tclock testcurs view xmas
reset_prog_mode test: filter ncurses
reset_prog_mode_sp lib: ncurses
-reset_shell_mode test: bs filter savescreen
+reset_shell_mode test: bs filter savescreen test_setupterm
reset_shell_mode_sp lib: ncurses
resetty -
resetty_sp -
resize_term_sp -
resizeterm -
resizeterm_sp lib: ncurses
-restartterm -
+restartterm test: test_setupterm
restartterm_sp -
ripoffline test: demo_menus ncurses
ripoffline_sp -
set_term lib: ncurses
setcchar test: demo_panels ins_wide ncurses test_add_wchstr test_addwstr view
setscrreg test: view
-setupterm test: demo_terminfo dots test_vid_puts test_vidputs progs: clear tabs tput tset
+setupterm test: demo_terminfo dots test_setupterm test_vid_puts test_vidputs progs: clear tabs tput tset
slk_attr -
slk_attr_off -
slk_attr_on -
vid_attr test: test_vid_puts
vid_attr_sp -
vid_puts test: test_vid_puts
-vid_puts_sp -
+vid_puts_sp lib: ncurses
vidattr test: test_vidputs
vidattr_sp -
vidputs test: test_vidputs
-vidputs_sp lib: ncurses
+vidputs_sp -
vline test: gdc ncurses
vline_set -
vw_printw test: clip_printw
-# $Id: modules,v 1.51 2014/06/21 15:28:46 tom Exp $
+# $Id: modules,v 1.52 2015/06/27 10:40:27 tom Exp $
##############################################################################
-# Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. #
+# Copyright (c) 1998-2014,2015 Free 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"), #
test_instr progs $(srcdir) $(HEADER_DEPS)
test_inwstr progs $(srcdir) $(HEADER_DEPS)
test_opaque progs $(srcdir) $(HEADER_DEPS)
+test_setupterm progs $(srcdir) $(HEADER_DEPS)
test_vid_puts progs $(srcdir) $(HEADER_DEPS)
test_vidputs progs $(srcdir) $(HEADER_DEPS)
testaddch progs $(srcdir) $(HEADER_DEPS)
-# $Id: programs,v 1.25 2014/06/21 15:28:49 tom Exp $
+# $Id: programs,v 1.26 2015/06/27 10:40:53 tom Exp $
##############################################################################
-# Copyright (c) 2006-2013,2014 Free Software Foundation, Inc. #
+# Copyright (c) 2006-2014,2015 Free 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"), #
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_setupterm $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_setupterm
test_vid_puts $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_vid_puts
test_vidputs $(LDFLAGS_CURSES) $(LOCAL_LIBS) test_vidputs
testaddch $(LDFLAGS_CURSES) $(LOCAL_LIBS) testaddch
--- /dev/null
+/****************************************************************************
+ * Copyright (c) 2015 Free 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: test_setupterm.c,v 1.8 2015/06/28 00:53:46 tom Exp $
+ *
+ * A simple demo of setupterm/restartterm.
+ */
+#include <test.priv.h>
+
+#if HAVE_TIGETSTR
+
+static bool a_opt = FALSE;
+static bool f_opt = FALSE;
+static bool n_opt = FALSE;
+static bool r_opt = FALSE;
+
+static void
+test_rc(NCURSES_CONST char *name, int actual_rc, int actual_err)
+{
+ int expect_rc = -1;
+ int expect_err = -1;
+
+ if (name == 0)
+ name = getenv("TERM");
+ if (name == 0)
+ name = "?";
+
+ switch (*name) {
+ case 'v': /* vt100 is normal */
+ case 'd': /* dumb has no special flags */
+ expect_rc = 0;
+ expect_err = 1;
+ break;
+ case 'l': /* lpr is hardcopy */
+ expect_err = 1;
+ break;
+ case 'u': /* unknown is generic */
+ expect_err = 0;
+ break;
+ default:
+ break;
+ }
+ if (n_opt) {
+ expect_rc = -1;
+ expect_err = -1;
+ }
+ printf("%s",
+ ((actual_rc == expect_rc && actual_err == expect_err)
+ ? "OK"
+ : "ERR"));
+ printf(" '%s'", name);
+ if (actual_rc == expect_rc) {
+ printf(" rc=%d", actual_rc);
+ } else {
+ printf(" rc=%d (%d)", actual_rc, expect_rc);
+ }
+ if (actual_err == expect_err) {
+ printf(" err=%d", actual_err);
+ } else {
+ printf(" err=%d (%d)", actual_err, expect_err);
+ }
+ printf("\n");
+}
+
+static void
+test_setupterm(NCURSES_CONST char *name)
+{
+ int rc;
+ int err = -99;
+
+ if (r_opt) {
+ rc = restartterm(name, 0, f_opt ? NULL : &err);
+ } else {
+ rc = setupterm(name, 0, f_opt ? NULL : &err);
+ }
+ test_rc(name, rc, err);
+}
+
+static void
+usage(void)
+{
+ static const char *msg[] =
+ {
+ "Usage: test_setupterm [options] [terminal]",
+ "",
+ "Demonstrate error-checking for setupterm and restartterm.",
+ "",
+ "Options:",
+ " -a automatic test for each success/error code",
+ " -f treat errors as fatal",
+ " -n set environment to disable terminfo database, assuming",
+ " the compiled-in paths for database also fail",
+ " -r test restartterm rather than setupterm",
+ };
+ unsigned n;
+ for (n = 0; n < SIZEOF(msg); ++n) {
+ fprintf(stderr, "%s\n", msg[n]);
+ }
+ ExitProgram(EXIT_FAILURE);
+}
+
+int
+main(int argc, char *argv[])
+{
+ int n;
+
+ while ((n = getopt(argc, argv, "afnr")) != -1) {
+ switch (n) {
+ case 'a':
+ a_opt = TRUE;
+ break;
+ case 'f':
+ f_opt = TRUE;
+ break;
+ case 'n':
+ n_opt = TRUE;
+ break;
+ case 'r':
+ r_opt = TRUE;
+ break;
+ default:
+ usage();
+ break;
+ }
+ }
+
+ if (n_opt) {
+ static char none[][25] =
+ {
+ "HOME=/GUI",
+ "TERMINFO=/GUI",
+ "TERMINFO_DIRS=/GUI"
+ };
+ /*
+ * We can turn this off, but not on again, because ncurses caches the
+ * directory locations.
+ */
+ printf("** without database\n");
+ for (n = 0; n < 3; ++n)
+ putenv(none[n]);
+ } else {
+ printf("** with database\n");
+ }
+
+ /*
+ * The restartterm relies on an existing screen, so we make one here.
+ */
+ if (r_opt) {
+ newterm("ansi", stdout, stdin);
+ reset_shell_mode();
+ }
+
+ if (a_opt) {
+ static char predef[][9] =
+ {"vt100", "dumb", "lpr", "unknown", "none-such"};
+ if (optind < argc) {
+ usage();
+ }
+ for (n = 0; n < 4; ++n) {
+ test_setupterm(predef[n]);
+ }
+ } else {
+ if (optind < argc) {
+ for (n = optind; n < argc; ++n) {
+ test_setupterm(argv[n]);
+ }
+ } else {
+ test_setupterm(NULL);
+ }
+ }
+
+ ExitProgram(EXIT_SUCCESS);
+}
+
+#else /* !HAVE_TIGETSTR */
+int
+main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
+{
+ printf("This program requires the terminfo functions such as tigetstr\n");
+ ExitProgram(EXIT_FAILURE);
+}
+#endif /* HAVE_TIGETSTR */