ncurses 6.3 - patch 20220924

+ modify configure macro CF_BUILD_CC to check if the build-compiler
  works, rather than that it is different from the cross-compiler, e.g.,
  to accommodate a compiler which can be used for either purpose with
  different flags (report by Mikhail Korolev).
+ fix another memory-leak in tic.
+ correct change for cppcheck in menu library (report/analysis by
  "tuxway", cf: 20220903).
+ update config.guess, config.sub
This commit is contained in:
Thomas E. Dickey 2022-09-25 00:12:05 +00:00
parent 3ffedbf101
commit b5d80765d2
20 changed files with 3406 additions and 3258 deletions

29
Ada95/aclocal.m4 vendored
View File

@ -29,7 +29,7 @@ dnl***************************************************************************
dnl
dnl Author: Thomas E. Dickey
dnl
dnl $Id: aclocal.m4,v 1.194 2022/09/10 19:25:56 tom Exp $
dnl $Id: aclocal.m4,v 1.195 2022/09/24 20:42:30 tom Exp $
dnl Macros used in NCURSES Ada95 auto-configuration script.
dnl
dnl These macros are maintained separately from NCURSES. The copyright on
@ -477,7 +477,7 @@ fi
AC_SUBST(ARFLAGS)
])
dnl ---------------------------------------------------------------------------
dnl CF_BUILD_CC version: 9 updated: 2021/01/02 09:31:20
dnl CF_BUILD_CC version: 10 updated: 2022/09/24 16:36:41
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
@ -543,7 +543,30 @@ if test "$cross_compiling" = yes ; then
: ${BUILD_CC:='${CC}'}
if { test "$BUILD_CC" = "$CC" || test "$BUILD_CC" = '${CC}'; } ; then
AC_MSG_CHECKING(if the build-compiler "$BUILD_CC" works)
cf_save_crossed=$cross_compiling
cf_save_ac_link=$ac_link
cross_compiling=no
ac_link='$BUILD_CC -o "conftest$ac_exeext" $BUILD_CFLAGS $BUILD_CPPFLAGS $BUILD_LDFLAGS "conftest.$ac_ext" $BUILD_LIBS >&AS_MESSAGE_LOG_FD'
AC_TRY_RUN([#include <stdio.h>
int main(int argc, char *argv[])
{
${cf_cv_main_return:-return}(argc < 0 || argv == 0 || argv[0] == 0);
}
],
cf_ok_build_cc=yes,
cf_ok_build_cc=no,
cf_ok_build_cc=unknown)
cross_compiling=$cf_save_crossed
ac_link=$cf_save_ac_link
AC_MSG_RESULT($cf_ok_build_cc)
if test "$cf_ok_build_cc" != yes
then
AC_MSG_ERROR([Cross-build requires two compilers.
Use --with-build-cc to specify the native compiler.])
fi

2265
Ada95/configure vendored

File diff suppressed because it is too large Load Diff

12
NEWS
View File

@ -26,7 +26,7 @@
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
-- $Id: NEWS,v 1.3858 2022/09/17 20:49:10 tom Exp $
-- $Id: NEWS,v 1.3860 2022/09/24 20:40:35 tom Exp $
-------------------------------------------------------------------------------
This is a log of changes that ncurses has gone through since Zeyd started
@ -46,6 +46,16 @@ 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.
20220924
+ modify configure macro CF_BUILD_CC to check if the build-compiler
works, rather than that it is different from the cross-compiler, e.g.,
to accommodate a compiler which can be used for either purpose with
different flags (report by Mikhail Korolev).
+ fix another memory-leak in tic.
+ correct change for cppcheck in menu library (report/analysis by
"tuxway", cf: 20220903).
+ update config.guess, config.sub
20220917
+ reduce memory-leak in tic by separating allocations for struct entry
from TERMTYPE2 (cf: 20220430).

View File

@ -1 +1 @@
5:0:10 6.3 20220917
5:0:10 6.3 20220924

29
aclocal.m4 vendored
View File

@ -29,7 +29,7 @@ dnl***************************************************************************
dnl
dnl Author: Thomas E. Dickey 1995-on
dnl
dnl $Id: aclocal.m4,v 1.1011 2022/09/10 19:23:45 tom Exp $
dnl $Id: aclocal.m4,v 1.1012 2022/09/24 20:41:12 tom Exp $
dnl Macros used in NCURSES auto-configuration script.
dnl
dnl These macros are maintained separately from NCURSES. The copyright on
@ -739,7 +739,7 @@ if test "$cf_cv_type_of_bool" = unknown ; then
fi
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_BUILD_CC version: 9 updated: 2021/01/02 09:31:20
dnl CF_BUILD_CC version: 10 updated: 2022/09/24 16:36:41
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
@ -805,7 +805,30 @@ if test "$cross_compiling" = yes ; then
: ${BUILD_CC:='${CC}'}
if { test "$BUILD_CC" = "$CC" || test "$BUILD_CC" = '${CC}'; } ; then
AC_MSG_CHECKING(if the build-compiler "$BUILD_CC" works)
cf_save_crossed=$cross_compiling
cf_save_ac_link=$ac_link
cross_compiling=no
ac_link='$BUILD_CC -o "conftest$ac_exeext" $BUILD_CFLAGS $BUILD_CPPFLAGS $BUILD_LDFLAGS "conftest.$ac_ext" $BUILD_LIBS >&AS_MESSAGE_LOG_FD'
AC_TRY_RUN([#include <stdio.h>
int main(int argc, char *argv[])
{
${cf_cv_main_return:-return}(argc < 0 || argv == 0 || argv[0] == 0);
}
],
cf_ok_build_cc=yes,
cf_ok_build_cc=no,
cf_ok_build_cc=unknown)
cross_compiling=$cf_save_crossed
ac_link=$cf_save_ac_link
AC_MSG_RESULT($cf_ok_build_cc)
if test "$cf_ok_build_cc" != yes
then
AC_MSG_ERROR([Cross-build requires two compilers.
Use --with-build-cc to specify the native compiler.])
fi

4
config.guess vendored
View File

@ -4,7 +4,7 @@
# shellcheck disable=SC2006,SC2268 # see below for rationale
timestamp='2022-05-25'
timestamp='2022-08-01'
# 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
@ -1036,7 +1036,7 @@ EOF
k1om:Linux:*:*)
GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
;;
loongarch32:Linux:*:* | loongarch64:Linux:*:* | loongarchx32:Linux:*:*)
loongarch32:Linux:*:* | loongarch64:Linux:*:*)
GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
;;
m32r*:Linux:*:*)

4
config.sub vendored
View File

@ -4,7 +4,7 @@
# shellcheck disable=SC2006,SC2268 # see below for rationale
timestamp='2022-01-03'
timestamp='2022-08-01'
# 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
@ -1207,7 +1207,7 @@ case $cpu-$vendor in
| k1om \
| le32 | le64 \
| lm32 \
| loongarch32 | loongarch64 | loongarchx32 \
| loongarch32 | loongarch64 \
| m32c | m32r | m32rle \
| m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k \
| m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x \

4267
configure vendored

File diff suppressed because it is too large Load Diff

View File

@ -26,7 +26,7 @@
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
# $Id: dist.mk,v 1.1502 2022/09/17 10:53:30 tom Exp $
# $Id: dist.mk,v 1.1503 2022/09/24 08:24:58 tom Exp $
# Makefile for creating ncurses distributions.
#
# This only needs to be used directly as a makefile by developers, but
@ -38,7 +38,7 @@ SHELL = /bin/sh
# These define the major/minor/patch versions of ncurses.
NCURSES_MAJOR = 6
NCURSES_MINOR = 3
NCURSES_PATCH = 20220917
NCURSES_PATCH = 20220924
# We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)

View File

@ -33,7 +33,7 @@
* and: Thomas E. Dickey 1998-on *
****************************************************************************/
/* $Id: term_entry.h,v 1.62 2022/05/28 17:59:42 tom Exp $ */
/* $Id: term_entry.h,v 1.63 2022/09/24 15:04:59 tom Exp $ */
/*
* term_entry.h -- interface to entry-manipulation code
@ -135,6 +135,7 @@ struct entry {
extern NCURSES_EXPORT_VAR(ENTRY *) _nc_head;
extern NCURSES_EXPORT_VAR(ENTRY *) _nc_tail;
#define for_entry_list(qp) for (qp = _nc_head; qp; qp = qp->next)
#define for_entry_list2(qp,q0) for (qp = q0; qp; qp = qp->next)
#define MAX_LINE 132

View File

@ -38,7 +38,7 @@
#include "menu.priv.h"
MODULE_ID("$Id: m_post.c,v 1.37 2022/09/03 21:40:27 tom Exp $")
MODULE_ID("$Id: m_post.c,v 1.38 2022/09/24 09:38:44 tom Exp $")
/*---------------------------------------------------------------------------
| Facility : libnmenu
@ -216,9 +216,10 @@ _nc_Draw_Menu(const MENU *menu)
if (item != NULL)
{
int y = 0;
do
{
int y = 0;
ITEM *lasthor;
wmove(menu->win, y, 0);

View File

@ -48,7 +48,7 @@
#include <tic.h>
MODULE_ID("$Id: comp_parse.c,v 1.124 2022/09/10 19:54:59 tom Exp $")
MODULE_ID("$Id: comp_parse.c,v 1.127 2022/09/24 15:24:15 tom Exp $")
static void sanity_check2(TERMTYPE2 *, bool);
NCURSES_IMPEXP void (NCURSES_API *_nc_check_termtype2) (TERMTYPE2 *, bool) = sanity_check2;
@ -412,8 +412,8 @@ _nc_resolve_uses2(bool fullresolve, bool literal)
for_entry_list(qp) {
int matchcount = 0;
for_entry_list(rp) {
if (qp > rp // FIXME - pointer-comparison is wrong...
for_entry_list2(rp, qp->next) {
if (qp > rp
&& check_collisions(qp->tterm.term_names,
rp->tterm.term_names,
matchcount + 1)) {
@ -575,6 +575,7 @@ _nc_resolve_uses2(bool fullresolve, bool literal)
qp->uses[qp->nuses - 1].link);
_nc_merge_entry(&merged,
qp->uses[qp->nuses - 1].link);
free(qp->uses[qp->nuses - 1].name);
}
/*
@ -612,13 +613,6 @@ _nc_resolve_uses2(bool fullresolve, bool literal)
DEBUG(2, ("MERGES COMPLETED OK"));
}
/*
* We'd like to free entries read in off disk at this point, but can't.
* The merge_entry() code doesn't copy the strings in the use entries,
* it just aliases them. If this ever changes, do a
* free_entries(lastread) here.
*/
DEBUG(2, ("RESOLUTION FINISHED"));
if (fullresolve) {

View File

@ -1,8 +1,8 @@
ncurses6 (6.3+20220917) unstable; urgency=low
ncurses6 (6.3+20220924) unstable; urgency=low
* latest weekly patch
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 17 Sep 2022 06:53:31 -0400
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 24 Sep 2022 04:24:58 -0400
ncurses6 (5.9-20131005) unstable; urgency=low

View File

@ -1,8 +1,8 @@
ncurses6 (6.3+20220917) unstable; urgency=low
ncurses6 (6.3+20220924) unstable; urgency=low
* latest weekly patch
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 17 Sep 2022 06:53:31 -0400
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 24 Sep 2022 04:24:58 -0400
ncurses6 (5.9-20131005) unstable; urgency=low

View File

@ -1,8 +1,8 @@
ncurses6 (6.3+20220917) unstable; urgency=low
ncurses6 (6.3+20220924) unstable; urgency=low
* latest weekly patch
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 17 Sep 2022 06:53:31 -0400
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 24 Sep 2022 04:24:58 -0400
ncurses6 (5.9-20120608) unstable; urgency=low

View File

@ -1,4 +1,4 @@
; $Id: mingw-ncurses.nsi,v 1.542 2022/09/17 10:53:30 tom Exp $
; $Id: mingw-ncurses.nsi,v 1.543 2022/09/24 08:24:58 tom Exp $
; TODO add examples
; TODO bump ABI to 6
@ -10,7 +10,7 @@
!define VERSION_MAJOR "6"
!define VERSION_MINOR "3"
!define VERSION_YYYY "2022"
!define VERSION_MMDD "0917"
!define VERSION_MMDD "0924"
!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.3
Release: 20220917
Release: 20220924
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.3
Release: 20220917
Release: 20220924
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz

View File

@ -1,7 +1,7 @@
Summary: Curses library with POSIX thread support.
Name: ncursest6
Version: 6.3
Release: 20220917
Release: 20220924
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz

View File

@ -43,7 +43,7 @@
#include <dump_entry.h>
MODULE_ID("$Id: infocmp.c,v 1.155 2022/09/03 23:28:48 tom Exp $")
MODULE_ID("$Id: infocmp.c,v 1.156 2022/09/24 10:13:06 tom Exp $")
#define MAX_STRING 1024 /* maximum formatted string */
@ -905,7 +905,6 @@ analyze_string(const char *name, const char *cap, TERMTYPE2 *tp)
sizeof(buf2));
_nc_STRNCPY(buf3, sp + csi, len);
buf3[len] = '\0';
len += (size_t) csi + 1;
expansion = lookup_params(std_modes, buf2, buf3);
}
@ -926,7 +925,6 @@ analyze_string(const char *name, const char *cap, TERMTYPE2 *tp)
sizeof(buf2));
_nc_STRNCPY(buf3, sp + csi + 1, len);
buf3[len] = '\0';
len += (size_t) csi + 2;
expansion = lookup_params(private_modes, buf2, buf3);
}