ncurses 6.1 - patch 20180609

+ modify generatesd ncurses*config and ncurses.pc, ncursesw.pc, etc.,
  to list helper libraries such as gpm for static linking (Debian
  #900839).
+ marked vwprintw and vwscanw as deprecated; recommend using vw_printw
  and vw_scanw, respectively.
This commit is contained in:
Thomas E. Dickey 2018-06-09 23:57:16 +00:00
parent 8556933f52
commit e23d7db3de
20 changed files with 1725 additions and 1608 deletions

9
NEWS
View File

@ -25,7 +25,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
-- $Id: NEWS,v 1.3137 2018/06/02 22:52:28 tom Exp $
-- $Id: NEWS,v 1.3140 2018/06/09 22:32:09 tom Exp $
-------------------------------------------------------------------------------
This is a log of changes that ncurses has gone through since Zeyd started
@ -45,6 +45,13 @@ See the AUTHORS file for the corresponding full names.
Changes through 1.9.9e did not credit all contributions;
it is not possible to add this information.
20180609
+ modify generatesd ncurses*config and ncurses.pc, ncursesw.pc, etc.,
to list helper libraries such as gpm for static linking (Debian
#900839).
+ marked vwprintw and vwscanw as deprecated; recommend using vw_printw
and vw_scanw, respectively.
20180602
+ add RPM test-package "ncursest-examples".
+ modified RPM test-package to work with Mageia6.

View File

@ -1 +1 @@
5:0:10 6.1 20180602
5:0:10 6.1 20180609

3163
configure vendored

File diff suppressed because it is too large Load Diff

View File

@ -28,14 +28,14 @@ dnl***************************************************************************
dnl
dnl Author: Thomas E. Dickey 1995-on
dnl
dnl $Id: configure.in,v 1.657 2018/05/26 16:43:27 tom Exp $
dnl $Id: configure.in,v 1.658 2018/06/09 22:19:13 tom Exp $
dnl Process this file with autoconf to produce a configure script.
dnl
dnl See https://invisible-island.net/autoconf/ for additional information.
dnl
dnl ---------------------------------------------------------------------------
AC_PREREQ(2.52.20170501)
AC_REVISION($Revision: 1.657 $)
AC_REVISION($Revision: 1.658 $)
AC_INIT(ncurses/base/lib_initscr.c)
AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin)
@ -511,9 +511,11 @@ if test "$with_gpm" != no ; then
fi
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"
CF_ADD_LIB(dl,PRIVATE_LIBS)
else
SHLIB_LIST="-lgpm $SHLIB_LIST"
CF_ADD_LIB(gpm,TEST_LIBS)
CF_ADD_LIB(gpm,PRIVATE_LIBS)
fi
AC_DEFINE(HAVE_LIBGPM,1,[Define to 1 if we have the gpm library])
CF_CHECK_GPM_WGETCH
@ -1255,6 +1257,7 @@ if test "x$with_pthread" = "xyes" ; then
enable_reentrant=yes
if test "x$cf_cv_weak_symbols" = xyes ; then
PTHREAD=-lpthread
CF_ADD_LIB(pthread,PRIVATE_LIBS)
fi
fi
AC_SUBST(PTHREAD)
@ -1277,6 +1280,7 @@ if test "x$with_reentrant" = xyes ; then
CF_REMOVE_LIB(LIBS,$LIBS,pthread)
CF_ADD_LIB(pthread,TEST_LIBS)
CF_ADD_LIB(pthread,TEST_LIBS2)
CF_ADD_LIB(pthread,PRIVATE_LIBS)
else
# when not using weak symbols but with_reentrant,
# add 't' to the library suffix on all platforms
@ -2322,6 +2326,7 @@ else
fi
AC_SUBST(ADAGEN_LDFLAGS)
AC_SUBST(CHECK_BUILD)
AC_SUBST(PRIVATE_LIBS)
AC_DEFINE(HAVE_CURSES_DATA_BOOLNAMES,1,[definition needed for in-tree build of tack])

View File

@ -25,7 +25,7 @@
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
# $Id: dist.mk,v 1.1226 2018/05/28 19:47:08 tom Exp $
# $Id: dist.mk,v 1.1227 2018/06/09 14:23:06 tom Exp $
# Makefile for creating ncurses distributions.
#
# This only needs to be used directly as a makefile by developers, but
@ -37,7 +37,7 @@ SHELL = /bin/sh
# These define the major/minor/patch versions of ncurses.
NCURSES_MAJOR = 6
NCURSES_MINOR = 1
NCURSES_PATCH = 20180602
NCURSES_PATCH = 20180609
# We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)

View File

@ -31,7 +31,7 @@
<p class="PUBDATE">v1.9, 2005-06-20<br></p>
<div class="REVHISTORY">
<table width="100%" border="0">
<table width="100%" border="0" summary="revisions">
<tr>
<th align="left" valign="top" colspan="3"><b>Revision
History</b></th>
@ -323,7 +323,7 @@
<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.3. <a href="#VWPRINTW">vw_printw()</a></dt>
<dt>6.3.4. <a href="#SIMPLEPRINTWEX">A Simple
printw example</a></dt>
@ -355,7 +355,7 @@
<dt>7.2.2. <a href="#WSCANWMVWSCANW">wscanw() and
mvwscanw()</a></dt>
<dt>7.2.3. <a href="#VWSCANW">vwscanw()</a></dt>
<dt>7.2.3. <a href="#VWSCANW">vw_scanw()</a></dt>
</dl>
</dd>
@ -1679,7 +1679,7 @@ int main()
<hr>
<h4 class="SECT3"><a name="VWPRINTW" id="VWPRINTW">6.3.3.
vwprintw()</a></h4>
vw_printw()</a></h4>
<p>This function is similar to <tt class=
"LITERAL">vprintf()</tt>. This can be used when variable
@ -1860,7 +1860,7 @@ int main()
<hr>
<h4 class="SECT3"><a name="VWSCANW" id="VWSCANW">7.2.3.
vwscanw()</a></h4>
vw_scanw()</a></h4>
<p>This function is similar to <tt class=
"LITERAL">vscanf()</tt>. This can be used when a variable

View File

@ -32,7 +32,7 @@
* and: Thomas E. Dickey 1996-on *
****************************************************************************/
/* $Id: curses.h.in,v 1.260 2018/05/12 23:35:35 tom Exp $ */
/* $Id: curses.h.in,v 1.263 2018/06/09 20:16:32 tom Exp $ */
#ifndef __NCURSES_H
#define __NCURSES_H
@ -813,10 +813,10 @@ extern NCURSES_EXPORT(void) use_tioctl (bool); /* implemented */
extern NCURSES_EXPORT(int) vidattr (chtype); /* implemented */
extern NCURSES_EXPORT(int) vidputs (chtype, NCURSES_OUTC); /* implemented */
extern NCURSES_EXPORT(int) vline (chtype, int); /* generated */
extern NCURSES_EXPORT(int) vwprintw (WINDOW *, const char *,va_list); /* implemented */
extern NCURSES_EXPORT(int) vw_printw (WINDOW *, const char *,va_list); /* generated */
extern NCURSES_EXPORT(int) vwscanw (WINDOW *, const char *,va_list); /* implemented */
extern NCURSES_EXPORT(int) vw_scanw (WINDOW *, const char *,va_list); /* generated */
extern NCURSES_EXPORT(int) vwprintw (WINDOW *, const char *,va_list) GCC_DEPRECATED(use vw_printw); /* implemented */
extern NCURSES_EXPORT(int) vw_printw (WINDOW *, const char *,va_list); /* implemented */
extern NCURSES_EXPORT(int) vwscanw (WINDOW *, const char *,va_list) GCC_DEPRECATED(use vw_scanw); /* implemented */
extern NCURSES_EXPORT(int) vw_scanw (WINDOW *, const char *,va_list); /* implemented */
extern NCURSES_EXPORT(int) waddch (WINDOW *, const chtype); /* implemented */
extern NCURSES_EXPORT(int) waddchnstr (WINDOW *,const chtype *,int); /* implemented */
extern NCURSES_EXPORT(int) waddchstr (WINDOW *,const chtype *); /* generated */
@ -1398,8 +1398,8 @@ extern NCURSES_EXPORT(int) NCURSES_SP_NAME(use_legacy_coding) (SCREEN*, int); /*
* use POSIX stdarg.h. The ncurses versions of vwprintw/vwscanw already
* use stdarg.h, so...
*/
#define vw_printw vwprintw
#define vw_scanw vwscanw
/* define vw_printw vwprintw */
/* define vw_scanw vwscanw */
/*
* Export fallback function for use in C++ binding.

View File

@ -1,5 +1,5 @@
#!@SHELL@
# $Id: gen-pkgconfig.in,v 1.33 2018/01/01 22:51:23 tom Exp $
# $Id: gen-pkgconfig.in,v 1.34 2018/06/09 22:21:33 tom Exp $
##############################################################################
# Copyright (c) 2009-2015,2018 Free Software Foundation, Inc. #
# #
@ -46,6 +46,7 @@ CXX_NAME=@CXX_NAME@
DFT_DEP_SUFFIX=@DFT_DEP_SUFFIX@
TINFO_ARG_SUFFIX=@TINFO_ARG_SUFFIX@
CXX_LIB_SUFFIX=@CXX_LIB_SUFFIX@
PRIVATE_LIBS="@PRIVATE_LIBS@"
suffix=@PC_MODULE_SUFFIX@
prefix="@prefix@"
@ -122,6 +123,13 @@ do
reqs="${reqs}${SUB_LIBRARY}${suffix}"
fi
if test $name = $MAIN_LIBRARY
then
main_libs="$PRIVATE_LIBS"
else
main_libs=
fi
echo "** creating ${name}${suffix}.pc"
cat >${name}${suffix}.pc <<EOF
# pkg-config file generated by `basename $0`
@ -141,7 +149,7 @@ Version: \${version}
URL: https://invisible-island.net/ncurses
Requires.private: $reqs
Libs: $LDFLAGS $LIBS
Libs.private: @LIBS@ @PTHREAD@
Libs.private: @LIBS@ $main_libs
Cflags: $CFLAGS
EOF

View File

@ -1,7 +1,7 @@
#!@SHELL@
# $Id: ncurses-config.in,v 1.36 2017/12/09 22:45:44 tom Exp $
# $Id: ncurses-config.in,v 1.37 2018/06/09 22:29:01 tom Exp $
##############################################################################
# Copyright (c) 2006-2015,2017 Free Software Foundation, Inc. #
# Copyright (c) 2006-2017,2018 Free 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"), #
@ -117,13 +117,14 @@ ENDECHO
else
LIBDIR=-L$libdir
fi
LIBS="@LIBS@ @PRIVATE_LIBS@"
if test @TINFO_NAME@ = @LIB_NAME@ ; then
sed -e 's,^[ ]*,,' -e 's, [ ]*, ,g' -e 's,[ ]*$,,' <<-ENDECHO
$LIBDIR @EXTRA_LDFLAGS@ -l${THIS} @LIBS@
$LIBDIR @EXTRA_LDFLAGS@ -l${THIS} $LIBS
ENDECHO
else
sed -e 's,^[ ]*,,' -e 's, [ ]*, ,g' -e 's,[ ]*$,,' <<-ENDECHO
$LIBDIR @EXTRA_LDFLAGS@ -l${THIS} -l${TINFO_LIB} @LIBS@
$LIBDIR @EXTRA_LDFLAGS@ -l${THIS} -l${TINFO_LIB} $LIBS
ENDECHO
fi
;;

View File

@ -2,10 +2,10 @@
#
# MKlib_gen.sh -- generate sources from curses.h macro definitions
#
# ($Id: MKlib_gen.sh,v 1.60 2017/12/09 22:27:41 tom Exp $)
# ($Id: MKlib_gen.sh,v 1.62 2018/06/09 19:27:00 tom Exp $)
#
##############################################################################
# Copyright (c) 1998-2017,2017 Free Software Foundation, Inc. #
# Copyright (c) 1998-2017,2018 Free 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"), #
@ -99,6 +99,7 @@ if test "$USE" = implemented ; then
cat >$ED1 <<EOF1
/^extern.*implemented/{
h
s/GCC_DEPRECATED([^)]*)//
s/NCURSES_SP_NAME(\([^)]*\))/NCURSES_SP_NAME___\1/
h
s/^.*implemented:\([^ *]*\).*/P_POUNDCif_USE_\1_SUPPORT/p
@ -434,11 +435,6 @@ BEGIN {
print ""
print "#include <curses.priv.h>"
print ""
print "#undef vw_scanw"
print "#undef vwscanw"
print ""
print "#undef vw_printw"
print "#undef vwprintw"
}
/^DECLARATIONS/ {start = 1; next;}
{

View File

@ -1,5 +1,5 @@
/****************************************************************************
* Copyright (c) 1998-2012,2016 Free Software Foundation, Inc. *
* Copyright (c) 1998-2016,2018 Free 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_printw.c,v 1.24 2016/05/28 23:11:26 tom Exp $")
MODULE_ID("$Id: lib_printw.c,v 1.26 2018/06/09 20:18:24 tom Exp $")
NCURSES_EXPORT(int)
printw(const char *fmt,...)
@ -56,7 +56,7 @@ printw(const char *fmt,...)
#endif
va_start(argp, fmt);
code = vwprintw(stdscr, fmt, argp);
code = vw_printw(stdscr, fmt, argp);
va_end(argp);
returnCode(code);
@ -77,7 +77,7 @@ wprintw(WINDOW *win, const char *fmt,...)
#endif
va_start(argp, fmt);
code = vwprintw(win, fmt, argp);
code = vw_printw(win, fmt, argp);
va_end(argp);
returnCode(code);
@ -100,7 +100,7 @@ mvprintw(int y, int x, const char *fmt,...)
va_list argp;
va_start(argp, fmt);
code = vwprintw(stdscr, fmt, argp);
code = vw_printw(stdscr, fmt, argp);
va_end(argp);
}
returnCode(code);
@ -123,7 +123,7 @@ mvwprintw(WINDOW *win, int y, int x, const char *fmt,...)
va_list argp;
va_start(argp, fmt);
code = vwprintw(win, fmt, argp);
code = vw_printw(win, fmt, argp);
va_end(argp);
}
returnCode(code);
@ -146,3 +146,21 @@ vwprintw(WINDOW *win, const char *fmt, va_list argp)
}
returnCode(code);
}
NCURSES_EXPORT(int)
vw_printw(WINDOW *win, const char *fmt, va_list argp)
{
char *buf;
int code = ERR;
#if NCURSES_SP_FUNCS
SCREEN *sp = _nc_screen_of(win);
#endif
T((T_CALLED("vw_printw(%p,%s,va_list)"), (void *) win, _nc_visbuf(fmt)));
buf = NCURSES_SP_NAME(_nc_printf_string) (NCURSES_SP_ARGx fmt, argp);
if (buf != 0) {
code = waddstr(win, buf);
}
returnCode(code);
}

View File

@ -40,7 +40,7 @@
#include <curses.priv.h>
MODULE_ID("$Id: lib_scanw.c,v 1.15 2018/04/07 21:28:27 tom Exp $")
MODULE_ID("$Id: lib_scanw.c,v 1.17 2018/06/09 20:19:20 tom Exp $")
NCURSES_EXPORT(int)
vwscanw(WINDOW *win, const char *fmt, va_list argp)
@ -57,6 +57,21 @@ vwscanw(WINDOW *win, const char *fmt, va_list argp)
return code;
}
NCURSES_EXPORT(int)
vw_scanw(WINDOW *win, const char *fmt, va_list argp)
{
char buf[BUFSIZ];
int code = ERR;
if (wgetnstr(win, buf, (int) sizeof(buf) - 1) != ERR) {
if ((code = vsscanf(buf, fmt, argp)) == EOF) {
code = ERR;
}
}
return code;
}
NCURSES_EXPORT(int)
scanw(const char *fmt,...)
{
@ -66,7 +81,7 @@ scanw(const char *fmt,...)
T(("scanw(\"%s\",...) called", fmt));
va_start(ap, fmt);
code = vwscanw(stdscr, fmt, ap);
code = vw_scanw(stdscr, fmt, ap);
va_end(ap);
return (code);
}
@ -80,7 +95,7 @@ wscanw(WINDOW *win, const char *fmt,...)
T(("wscanw(%p,\"%s\",...) called", (void *) win, fmt));
va_start(ap, fmt);
code = vwscanw(win, fmt, ap);
code = vw_scanw(win, fmt, ap);
va_end(ap);
return (code);
}
@ -92,7 +107,7 @@ mvscanw(int y, int x, const char *fmt,...)
va_list ap;
va_start(ap, fmt);
code = (move(y, x) == OK) ? vwscanw(stdscr, fmt, ap) : ERR;
code = (move(y, x) == OK) ? vw_scanw(stdscr, fmt, ap) : ERR;
va_end(ap);
return (code);
}
@ -104,7 +119,7 @@ mvwscanw(WINDOW *win, int y, int x, const char *fmt,...)
va_list ap;
va_start(ap, fmt);
code = (wmove(win, y, x) == OK) ? vwscanw(win, fmt, ap) : ERR;
code = (wmove(win, y, x) == OK) ? vw_scanw(win, fmt, ap) : ERR;
va_end(ap);
return (code);
}

View File

@ -1,8 +1,8 @@
ncurses6 (6.1+20180602) unstable; urgency=low
ncurses6 (6.1+20180609) unstable; urgency=low
* latest weekly patch
-- Thomas E. Dickey <dickey@invisible-island.net> Mon, 28 May 2018 15:47:08 -0400
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 09 Jun 2018 10:23:06 -0400
ncurses6 (5.9-20131005) unstable; urgency=low

View File

@ -1,8 +1,8 @@
ncurses6 (6.1+20180602) unstable; urgency=low
ncurses6 (6.1+20180609) unstable; urgency=low
* latest weekly patch
-- Thomas E. Dickey <dickey@invisible-island.net> Mon, 28 May 2018 15:47:08 -0400
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 09 Jun 2018 10:23:06 -0400
ncurses6 (5.9-20131005) unstable; urgency=low

View File

@ -1,8 +1,8 @@
ncurses6 (6.1+20180602) unstable; urgency=low
ncurses6 (6.1+20180609) unstable; urgency=low
* latest weekly patch
-- Thomas E. Dickey <dickey@invisible-island.net> Mon, 28 May 2018 15:47:08 -0400
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 09 Jun 2018 10:23:06 -0400
ncurses6 (5.9-20120608) unstable; urgency=low

View File

@ -1,4 +1,4 @@
; $Id: mingw-ncurses.nsi,v 1.273 2018/05/28 19:47:08 tom Exp $
; $Id: mingw-ncurses.nsi,v 1.274 2018/06/09 14:23:06 tom Exp $
; TODO add examples
; TODO bump ABI to 6
@ -10,7 +10,7 @@
!define VERSION_MAJOR "6"
!define VERSION_MINOR "1"
!define VERSION_YYYY "2018"
!define VERSION_MMDD "0602"
!define VERSION_MMDD "0609"
!define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}
!define MY_ABI "5"

View File

@ -3,7 +3,7 @@
Summary: shared libraries for terminal handling
Name: mingw32-ncurses6
Version: 6.1
Release: 20180602
Release: 20180609
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz

View File

@ -1,7 +1,7 @@
Summary: shared libraries for terminal handling
Name: ncurses6
Version: 6.1
Release: 20180602
Release: 20180609
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz

View File

@ -25,7 +25,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
-- $Id: README,v 1.65 2018/01/01 15:08:44 tom Exp $
-- $Id: README,v 1.66 2018/06/09 19:03:16 tom Exp $
-------------------------------------------------------------------------------
The programs in this directory are used to test and demonstrate ncurses.
@ -729,10 +729,10 @@ vidputs test: test_vidputs
vidputs_sp -
vline test: gdc ncurses
vline_set -
vw_printw test: clip_printw
vw_scanw -
vwprintw test: movewindow
vwscanw lib: ncurses
vw_printw test: clip_printw, movewindow
vw_scanw lib: ncurses
vwprintw -
vwscanw -
wadd_wch test: inch_wide ncurses test_add_wchstr test_addwstr
wadd_wchnstr test: savescreen test_add_wchstr
wadd_wchstr test: test_add_wchstr

View File

@ -1,5 +1,5 @@
/****************************************************************************
* Copyright (c) 2006-2013,2017 Free Software Foundation, Inc. *
* Copyright (c) 2006-2017,2018 Free 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: movewindow.c,v 1.46 2017/12/23 21:36:59 tom Exp $
* $Id: movewindow.c,v 1.47 2018/06/09 17:35:50 tom Exp $
*
* Demonstrate move functions for windows and derived windows from the curses
* library.
@ -106,7 +106,7 @@ message(int lineno, CONST_FMT char *fmt, va_list argp)
addstr(buffer);
}
#else
vwprintw(stdscr, fmt, argp);
vw_printw(stdscr, fmt, argp);
#endif
move(y, x);