mirror of
https://github.com/ThomasDickey/ncurses-snapshots.git
synced 2026-01-26 19:09:16 +00:00
snapshot of project "ncurses", label v6_5_20250809
This commit is contained in:
parent
90144ed97f
commit
e55c8026e8
3
MANIFEST
3
MANIFEST
@ -558,12 +558,11 @@
|
||||
./include/headers
|
||||
./include/nc_access.h
|
||||
./include/nc_alloc.h
|
||||
./include/nc_mingw.h
|
||||
./include/nc_panel.h
|
||||
./include/nc_string.h
|
||||
./include/nc_termios.h
|
||||
./include/nc_tparm.h
|
||||
./include/nc_win32.h
|
||||
./include/nc_win32.h.in
|
||||
./include/ncurses_cfg.hin
|
||||
./include/ncurses_defs
|
||||
./include/ncurses_dll.h.in
|
||||
|
||||
9
NEWS
9
NEWS
@ -26,7 +26,7 @@
|
||||
-- sale, use or other dealings in this Software without prior written --
|
||||
-- authorization. --
|
||||
-------------------------------------------------------------------------------
|
||||
-- $Id: NEWS,v 1.4321 2025/08/02 20:43:03 tom Exp $
|
||||
-- $Id: NEWS,v 1.4324 2025/08/09 10:58:27 tom Exp $
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
This is a log of changes that ncurses has gone through since Zeyd started
|
||||
@ -46,6 +46,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.
|
||||
|
||||
20250809
|
||||
+ add configure check for Win32 named pipes feature, using that to make
|
||||
nc_mingw.h obsolete in favor of nc_win32.h
|
||||
+ amend limit used in alloc_pair, by applying an adjustment for default
|
||||
colors only when the maximum number of color pairs is greater than
|
||||
the maximum number of colors (report by "Ingvix").
|
||||
|
||||
20250802
|
||||
+ fixes for reading Unicode characters in MinGW/Windows port (report by
|
||||
Axel Reinhold).
|
||||
|
||||
32
aclocal.m4
vendored
32
aclocal.m4
vendored
@ -29,7 +29,7 @@ dnl***************************************************************************
|
||||
dnl
|
||||
dnl Author: Thomas E. Dickey 1995-on
|
||||
dnl
|
||||
dnl $Id: aclocal.m4,v 1.1114 2025/07/26 18:11:56 tom Exp $
|
||||
dnl $Id: aclocal.m4,v 1.1116 2025/08/09 00:45:30 tom Exp $
|
||||
dnl Macros used in NCURSES auto-configuration script.
|
||||
dnl
|
||||
dnl These macros are maintained separately from NCURSES. The copyright on
|
||||
@ -482,7 +482,7 @@ dnl Allow user to enable a normally-off option.
|
||||
AC_DEFUN([CF_ARG_ENABLE],
|
||||
[CF_ARG_OPTION($1,[$2],[$3],[$4],no)])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_ARG_OPTION version: 5 updated: 2015/05/10 19:52:14
|
||||
dnl CF_ARG_OPTION version: 6 updated: 2025/08/05 04:09:09
|
||||
dnl -------------
|
||||
dnl Restricted form of AC_ARG_ENABLE that ensures user doesn't give bogus
|
||||
dnl values.
|
||||
@ -491,7 +491,7 @@ 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 $4 = action to 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)
|
||||
@ -1444,10 +1444,30 @@ else
|
||||
fi
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_CHECK_TYPE2 version: 2 updated: 2024/12/14 16:33:06
|
||||
dnl CF_CHECK_NAMED_PIPES version: 1 updated: 2025/08/08 20:44:18
|
||||
dnl --------------------
|
||||
dnl Check for existence of Windows named-pipe functions, set cache variable
|
||||
dnl to reflect the result.
|
||||
AC_DEFUN([CF_CHECK_NAMED_PIPES],[
|
||||
AC_CACHE_CHECK(for named pipe functions,cf_cv_named_pipes,[
|
||||
cf_save_CPPFLAGS="$CPPFLAGS"
|
||||
CPPFLAGS="$CPPFLAGS -DWINVER=0x0600 -DWIN32_LEAN_AND_MEAN"
|
||||
AC_TRY_LINK([#include <windows.h>],
|
||||
[
|
||||
HANDLE handle = 0;
|
||||
ULONG pPid = 0;
|
||||
if (GetNamedPipeInfo(handle, NULL, NULL, NULL, NULL)) {
|
||||
if (GetNamedPipeServerProcessId(handle, &pPid)) {
|
||||
${cf_cv_main_return:-return} (0);
|
||||
}
|
||||
}
|
||||
],[cf_cv_named_pipes=yes],[cf_cv_named_pipes=no])
|
||||
CPPFLAGS="$cf_save_CPPFLAGS"
|
||||
])dnl
|
||||
])dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl CF_CHECK_TYPE2 version: 3 updated: 2025/08/08 20:44:18
|
||||
dnl --------------
|
||||
dnl CF_CHECK_TYPE version: 5 updated: 2024/12/14 16:09:34
|
||||
dnl -------------
|
||||
dnl Check if the given type can be declared via the given header.
|
||||
dnl $1 = the type to check
|
||||
dnl $2 = the header (i.e., not one of the default includes)
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
// * This makes emacs happy -*-Mode: C++;-*-
|
||||
/****************************************************************************
|
||||
* Copyright 2018,2020 Thomas E. Dickey *
|
||||
* Copyright 2018-2020,2025 Thomas E. Dickey *
|
||||
* Copyright 1998-2008,2012 Free Software Foundation, Inc. *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a *
|
||||
@ -32,7 +32,7 @@
|
||||
* Author: Juergen Pfeifer, 1997 *
|
||||
****************************************************************************/
|
||||
|
||||
// $Id: internal.h,v 1.22 2020/08/29 23:06:41 tom Exp $
|
||||
// $Id: internal.h,v 1.23 2025/08/09 10:43:32 tom Exp $
|
||||
|
||||
#ifndef NCURSES_CPLUS_INTERNAL_H
|
||||
#define NCURSES_CPLUS_INTERNAL_H 1
|
||||
@ -46,11 +46,7 @@
|
||||
#endif
|
||||
|
||||
#if (defined(_WIN32) || defined(_WIN64))
|
||||
#if defined(EXP_WIN32_DRIVER)
|
||||
#include <nc_win32.h>
|
||||
#else
|
||||
#include <nc_mingw.h>
|
||||
#endif
|
||||
#undef KEY_EVENT
|
||||
#endif
|
||||
|
||||
|
||||
39
configure.in
39
configure.in
@ -29,7 +29,7 @@ dnl***************************************************************************
|
||||
dnl
|
||||
dnl Author: Thomas E. Dickey 1995-on
|
||||
dnl
|
||||
dnl $Id: configure.in,v 1.803 2025/07/26 18:00:55 Cosima.Neidahl Exp $
|
||||
dnl $Id: configure.in,v 1.807 2025/08/09 19:49:48 tom Exp $
|
||||
dnl Process this file with autoconf to produce a configure script.
|
||||
dnl
|
||||
dnl For additional information, see
|
||||
@ -38,7 +38,7 @@ dnl https://invisible-island.net/autoconf/my-autoconf.html
|
||||
dnl
|
||||
dnl ---------------------------------------------------------------------------
|
||||
AC_PREREQ(2.52.20210101)
|
||||
AC_REVISION($Revision: 1.803 $)
|
||||
AC_REVISION($Revision: 1.807 $)
|
||||
AC_INIT(ncurses/base/lib_initscr.c)
|
||||
AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin)
|
||||
|
||||
@ -1602,29 +1602,35 @@ fi
|
||||
esac
|
||||
AC_SUBST(NCURSES_WGETCH_EVENTS)
|
||||
|
||||
USE_NAMED_PIPES=0
|
||||
EXP_WIN32_DRIVER=0
|
||||
INTERNALS_HDR=
|
||||
|
||||
case "$cf_cv_system_name" in
|
||||
(*mingw32*|*mingw64*|*-msvc*)
|
||||
AC_MSG_CHECKING(if you want experimental-Windows driver)
|
||||
AC_ARG_ENABLE(exp-win32,
|
||||
[ --enable-exp-win32 compile with experimental-Windows driver],
|
||||
[with_exp_win32=$enableval],
|
||||
[with_exp_win32=no])
|
||||
AC_MSG_RESULT($with_exp_win32)
|
||||
CF_CHECK_NAMED_PIPES
|
||||
if test "$cf_cv_named_pipes" = yes; then
|
||||
AC_MSG_CHECKING(if you want experimental-Windows driver)
|
||||
AC_ARG_ENABLE(exp-win32,
|
||||
[ --enable-exp-win32 compile with experimental-Windows driver],
|
||||
[with_exp_win32=$enableval],
|
||||
[with_exp_win32=no])
|
||||
AC_MSG_RESULT($with_exp_win32)
|
||||
else
|
||||
with_exp_win32=no
|
||||
fi
|
||||
if test "x$with_exp_win32" = xyes
|
||||
then
|
||||
AC_DEFINE(USE_NAMED_PIPES,1,[Define to 1 to use named pipes with win32 driver])
|
||||
AC_DEFINE(EXP_WIN32_DRIVER,1,[Define to 1 to compile with experimental win32 driver])
|
||||
USE_NAMED_PIPES=1
|
||||
EXP_WIN32_DRIVER=1
|
||||
INTERNALS_HDR='[$](INCDIR)/nc_win32.h'
|
||||
else
|
||||
INTERNALS_HDR='[$](INCDIR)/nc_mingw.h'
|
||||
EXP_WIN32_DRIVER=0
|
||||
fi
|
||||
;;
|
||||
(*)
|
||||
EXP_WIN32_DRIVER=0
|
||||
INTERNALS_HDR=
|
||||
INTERNALS_HDR='../include/nc_win32.h'
|
||||
;;
|
||||
esac
|
||||
|
||||
AC_SUBST(USE_NAMED_PIPES)
|
||||
AC_SUBST(EXP_WIN32_DRIVER)
|
||||
AC_SUBST(INTERNALS_HDR)
|
||||
|
||||
@ -2556,6 +2562,7 @@ AC_OUTPUT( \
|
||||
include/MKterm.h.awk \
|
||||
include/curses.head:include/curses.h.in \
|
||||
include/ncurses_dll.h \
|
||||
include/nc_win32.h \
|
||||
include/termcap.h \
|
||||
include/unctrl.h \
|
||||
man/man_db.renames \
|
||||
|
||||
4
dist.mk
4
dist.mk
@ -26,7 +26,7 @@
|
||||
# use or other dealings in this Software without prior written #
|
||||
# authorization. #
|
||||
##############################################################################
|
||||
# $Id: dist.mk,v 1.1681 2025/08/02 09:11:36 tom Exp $
|
||||
# $Id: dist.mk,v 1.1682 2025/08/09 09:33:54 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 = 5
|
||||
NCURSES_PATCH = 20250802
|
||||
NCURSES_PATCH = 20250809
|
||||
|
||||
# We don't append the patch to the version, since this only applies to releases
|
||||
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# $Id: Makefile.in,v 1.54 2024/08/10 18:19:10 tom Exp $
|
||||
# $Id: Makefile.in,v 1.55 2025/08/08 23:27:31 tom Exp $
|
||||
##############################################################################
|
||||
# Copyright 2019-2021,2024 Thomas E. Dickey #
|
||||
# Copyright 2019-2024,2025 Thomas E. Dickey #
|
||||
# Copyright 1998-2013,2015 Free Software Foundation, Inc. #
|
||||
# #
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a #
|
||||
@ -78,6 +78,7 @@ CAPLIST = $(TERMINFO_CAPS) \
|
||||
CONFIG_SRC = \
|
||||
MKterm.h.awk \
|
||||
curses.head \
|
||||
nc_win32.h \
|
||||
ncurses_dll.h \
|
||||
termcap.h \
|
||||
unctrl.h
|
||||
|
||||
@ -33,7 +33,7 @@
|
||||
* and: Thomas E. Dickey 1996-on *
|
||||
****************************************************************************/
|
||||
|
||||
/* $Id: curses.h.in,v 1.298 2025/07/26 14:21:49 tom Exp $ */
|
||||
/* $Id: curses.h.in,v 1.299 2025/08/08 23:19:21 tom Exp $ */
|
||||
|
||||
#ifndef __NCURSES_H
|
||||
#define __NCURSES_H
|
||||
@ -1447,7 +1447,7 @@ extern NCURSES_EXPORT(int) NCURSES_SP_NAME(use_legacy_coding) (SCREEN*, int); /*
|
||||
*/
|
||||
#if !@HAVE_VSSCANF@ /* HAVE_VSSCANF */
|
||||
#define vsscanf(a,b,c) _nc_vsscanf(a,b,c)
|
||||
NCURSES_EXPORT(int) vsscanf(const char *, const char *, va_list);
|
||||
extern NCURSES_EXPORT(int) vsscanf(const char *, const char *, va_list);
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# $Id: headers,v 1.16 2023/04/22 12:09:09 tom Exp $
|
||||
# $Id: headers,v 1.20 2025/08/09 23:33:39 tom Exp $
|
||||
##############################################################################
|
||||
# Copyright 2020,2023 Thomas E. Dickey #
|
||||
# Copyright 2020-2023,2025 Thomas E. Dickey #
|
||||
# Copyright 1998-2012,2013 Free Software Foundation, Inc. #
|
||||
# #
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a #
|
||||
@ -46,8 +46,9 @@ $(srcdir)/term_entry.h
|
||||
# Porting
|
||||
@ port_win32con
|
||||
$(srcdir)/ncurses_mingw.h
|
||||
$(srcdir)/nc_mingw.h
|
||||
nc_win32.h
|
||||
@ port_win32
|
||||
$(srcdir)/win32_curses.h
|
||||
nc_win32.h
|
||||
|
||||
# vile:makemode
|
||||
|
||||
@ -1,92 +0,0 @@
|
||||
/****************************************************************************
|
||||
* Copyright 2018-2023,2024 Thomas E. Dickey *
|
||||
* Copyright 2008-2010,2017 Free Software Foundation, Inc. *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a *
|
||||
* copy of this software and associated documentation files (the *
|
||||
* "Software"), to deal in the Software without restriction, including *
|
||||
* without limitation the rights to use, copy, modify, merge, publish, *
|
||||
* distribute, distribute with modifications, sublicense, and/or sell *
|
||||
* copies of the Software, and to permit persons to whom the Software is *
|
||||
* furnished to do so, subject to the following conditions: *
|
||||
* *
|
||||
* The above copyright notice and this permission notice shall be included *
|
||||
* in all copies or substantial portions of the Software. *
|
||||
* *
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
|
||||
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
|
||||
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
|
||||
* IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
|
||||
* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
|
||||
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
|
||||
* THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
|
||||
* *
|
||||
* Except as contained in this notice, the name(s) of the above copyright *
|
||||
* holders shall not be used in advertising or otherwise to promote the *
|
||||
* sale, use or other dealings in this Software without prior written *
|
||||
* authorization. *
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Author: Thomas Dickey, 2008-on *
|
||||
****************************************************************************/
|
||||
|
||||
/* $Id: nc_mingw.h,v 1.13 2024/08/31 15:50:24 tom Exp $ */
|
||||
|
||||
#ifndef NC_MINGW_H
|
||||
#define NC_MINGW_H 1
|
||||
|
||||
#include <ncurses_cfg.h>
|
||||
|
||||
#if defined(_WIN32) || defined(__MSYS__) || defined(__CYGWIN__)
|
||||
|
||||
#ifdef WINVER
|
||||
# if WINVER < 0x0501
|
||||
# error WINVER must at least be 0x0501
|
||||
# endif
|
||||
#else
|
||||
# define WINVER 0x0501
|
||||
#endif
|
||||
#include <windows.h>
|
||||
|
||||
#undef sleep
|
||||
#define sleep(n) Sleep((n) * 1000)
|
||||
|
||||
#if HAVE_SYS_TIME_H
|
||||
#include <sys/time.h> /* for struct timeval */
|
||||
#endif
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#include <winsock2.h> /* for struct timeval */
|
||||
#endif
|
||||
|
||||
#include <stdint.h> /* for uint32_t */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <ncurses_dll.h>
|
||||
|
||||
#if !HAVE_CLOCK_GETTIME && !HAVE_GETTIMEOFDAY
|
||||
NCURSES_EXPORT(int) _nc_gettimeofday(struct timeval *, void *);
|
||||
#undef HAVE_GETTIMEOFDAY
|
||||
#define HAVE_GETTIMEOFDAY 2
|
||||
#define gettimeofday(tv,tz) _nc_gettimeofday(tv,tz)
|
||||
#endif
|
||||
|
||||
#define SIGHUP 1
|
||||
#define SIGKILL 9
|
||||
#define getlogin() "username"
|
||||
|
||||
#undef wcwidth
|
||||
#define wcwidth(ucs) _nc_wcwidth((wchar_t)(ucs))
|
||||
NCURSES_EXPORT(int) _nc_wcwidth(uint32_t);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* _WIN32|__MSYS__|__CYGWIN__ */
|
||||
|
||||
#endif /* NC_MINGW_H */
|
||||
@ -31,7 +31,7 @@
|
||||
* Author: Thomas Dickey, 2008-on *
|
||||
****************************************************************************/
|
||||
|
||||
/* $Id: nc_win32.h,v 1.17 2025/03/29 16:45:33 Daniel.Starke Exp $ */
|
||||
/* $Id: nc_win32.h.in,v 1.4 2025/08/09 14:26:13 tom Exp $ */
|
||||
|
||||
#ifndef NC_WIN32_H
|
||||
#define NC_WIN32_H 1
|
||||
@ -40,6 +40,8 @@
|
||||
|
||||
#if defined(_WIN32) || defined(_WIN64)
|
||||
|
||||
#if @USE_NAMED_PIPES@ /* USE_NAMED_PIPES */
|
||||
|
||||
#ifndef _NC_WINDOWS_NATIVE
|
||||
#define _NC_WINDOWS_NATIVE
|
||||
#endif
|
||||
@ -183,6 +185,58 @@ extern NCURSES_EXPORT_VAR(ConsoleInfo) _nc_CONSOLE;
|
||||
}
|
||||
#endif
|
||||
|
||||
#else /* !USE_NAMED_PIPES */
|
||||
|
||||
#ifdef WINVER
|
||||
# if WINVER < 0x0501
|
||||
# error WINVER must at least be 0x0501
|
||||
# endif
|
||||
#else
|
||||
# define WINVER 0x0501
|
||||
#endif
|
||||
|
||||
#include <windows.h>
|
||||
|
||||
#undef sleep
|
||||
#define sleep(n) Sleep((n) * 1000)
|
||||
|
||||
#if HAVE_SYS_TIME_H
|
||||
#include <sys/time.h> /* for struct timeval */
|
||||
#endif
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#include <winsock2.h> /* for struct timeval */
|
||||
#endif
|
||||
|
||||
#include <stdint.h> /* for uint32_t */
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <ncurses_dll.h>
|
||||
|
||||
#if !HAVE_CLOCK_GETTIME && !HAVE_GETTIMEOFDAY
|
||||
extern NCURSES_EXPORT(int) _nc_gettimeofday(struct timeval *, void *);
|
||||
#undef HAVE_GETTIMEOFDAY
|
||||
#define HAVE_GETTIMEOFDAY 2
|
||||
#define gettimeofday(tv,tz) _nc_gettimeofday(tv,tz)
|
||||
#endif
|
||||
|
||||
#define SIGHUP 1
|
||||
#define SIGKILL 9
|
||||
#define getlogin() "username"
|
||||
|
||||
#undef wcwidth
|
||||
#define wcwidth(ucs) _nc_wcwidth((wchar_t)(ucs))
|
||||
extern NCURSES_EXPORT(int) _nc_wcwidth(uint32_t);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* USE_NAMED_PIPES */
|
||||
|
||||
#endif /* _WIN32 || _WIN64 */
|
||||
|
||||
#endif /* NC_WIN32_H */
|
||||
@ -1,4 +1,4 @@
|
||||
# $Id: ncurses_defs,v 1.117 2025/05/17 22:22:40 tom Exp $
|
||||
# $Id: ncurses_defs,v 1.118 2025/08/08 23:46:30 tom Exp $
|
||||
##############################################################################
|
||||
# Copyright 2018-2024,2025 Thomas E. Dickey #
|
||||
# Copyright 2000-2016,2017 Free Software Foundation, Inc. #
|
||||
@ -271,6 +271,7 @@ USE_HASHMAP
|
||||
USE_HOME_TERMINFO
|
||||
USE_LINKS
|
||||
USE_MY_MEMMOVE
|
||||
USE_NAMED_PIPES
|
||||
USE_OK_BCOPY
|
||||
USE_PTHREADS_EINTR
|
||||
USE_RCS_IDS
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* Copyright 2018-2020,2021 Thomas E. Dickey *
|
||||
* Copyright 2018-2021,2025 Thomas E. Dickey *
|
||||
* Copyright 2008-2014,2017 Free Software Foundation, Inc. *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a *
|
||||
@ -31,17 +31,19 @@
|
||||
* Author: Juergen Pfeifer, 2008-on *
|
||||
****************************************************************************/
|
||||
|
||||
/* $Id: ncurses_mingw.h,v 1.7 2021/06/17 21:26:02 tom Exp $ */
|
||||
/* $Id: ncurses_mingw.h,v 1.8 2025/08/09 13:30:46 tom Exp $ */
|
||||
|
||||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
#ifdef _WIN32
|
||||
#ifndef _NC_MINGWH
|
||||
#define _NC_MINGWH
|
||||
#ifndef _NCURSES_MINGW_H
|
||||
#define _NCURSES_MINGW_H
|
||||
|
||||
#include <term.h>
|
||||
|
||||
#ifdef _WIN32
|
||||
#define USE_CONSOLE_DRIVER 1
|
||||
|
||||
#undef TERMIOS
|
||||
@ -78,5 +80,6 @@ extern NCURSES_EXPORT(int) _nc_mingw_tcflush(
|
||||
int queue);
|
||||
extern NCURSES_EXPORT(void) _nc_set_term_driver(void* term);
|
||||
|
||||
#endif /* _NC_MINGWH */
|
||||
#endif /* _WIN32 */
|
||||
|
||||
#endif /* _NCURSES_MINGW_H */
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* Copyright 2018-2022,2023 Thomas E. Dickey *
|
||||
* Copyright 2018-2023,2025 Thomas E. Dickey *
|
||||
* Copyright 1998-2012,2017 Free Software Foundation, Inc. *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a *
|
||||
@ -34,7 +34,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* $Id: tic.h,v 1.87 2023/04/22 13:37:21 tom Exp $
|
||||
* $Id: tic.h,v 1.88 2025/08/08 23:19:43 tom Exp $
|
||||
* tic.h - Global variables and structures for the terminfo compiler.
|
||||
*/
|
||||
|
||||
@ -313,8 +313,8 @@ extern NCURSES_EXPORT_VAR(bool) _nc_suppress_warnings;
|
||||
extern NCURSES_EXPORT_VAR(struct token) _nc_curr_token;
|
||||
|
||||
/* comp_userdefs.c */
|
||||
NCURSES_EXPORT(const struct user_table_entry *) _nc_get_userdefs_table (void);
|
||||
NCURSES_EXPORT(const HashData *) _nc_get_hash_user (void);
|
||||
extern NCURSES_EXPORT(const struct user_table_entry *) _nc_get_userdefs_table (void);
|
||||
extern NCURSES_EXPORT(const HashData *) _nc_get_hash_user (void);
|
||||
|
||||
/* captoinfo.c: capability conversion */
|
||||
extern NCURSES_EXPORT(char *) _nc_captoinfo (const char *, const char *, int const);
|
||||
|
||||
@ -40,7 +40,7 @@
|
||||
* as ^?. Printable characters are displayed as is.
|
||||
*/
|
||||
|
||||
/* $Id: unctrl.h.in,v 1.13 2025/07/19 17:46:04 tom Exp $ */
|
||||
/* $Id: unctrl.h.in,v 1.14 2025/08/08 23:19:21 tom Exp $ */
|
||||
|
||||
#ifndef NCURSES_UNCTRL_H_incl
|
||||
#define NCURSES_UNCTRL_H_incl 1
|
||||
@ -55,10 +55,10 @@ extern "C" {
|
||||
#include <curses.h>
|
||||
|
||||
#undef unctrl
|
||||
NCURSES_EXPORT(NCURSES_CONST char *) unctrl (chtype);
|
||||
extern NCURSES_EXPORT(NCURSES_CONST char *) unctrl (chtype);
|
||||
|
||||
#if @NCURSES_SP_FUNCS@ /* NCURSES_SP_FUNCS */
|
||||
NCURSES_EXPORT(NCURSES_CONST char *) NCURSES_SP_NAME(unctrl) (SCREEN*, chtype);
|
||||
extern NCURSES_EXPORT(NCURSES_CONST char *) NCURSES_SP_NAME(unctrl) (SCREEN*, chtype);
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
/****************************************************************************
|
||||
* Copyright 2018-2021,2024 Thomas E. Dickey *
|
||||
* Copyright 2018-2024,2025 Thomas E. Dickey *
|
||||
* Copyright 2008-2014,2017 Free Software Foundation, Inc. *
|
||||
* *
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a *
|
||||
@ -31,17 +31,19 @@
|
||||
* Author: Juergen Pfeifer, 2008-on *
|
||||
****************************************************************************/
|
||||
|
||||
/* $Id: win32_curses.h,v 1.4 2024/08/31 18:17:44 tom Exp $ */
|
||||
/* $Id: win32_curses.h,v 1.5 2025/08/09 13:30:54 tom Exp $ */
|
||||
|
||||
/*
|
||||
* This is the interface we use on Windows to mimic the control of the settings
|
||||
* of what acts like the classic TTY - the Windows Console.
|
||||
*/
|
||||
|
||||
#if (defined(_WIN32) || defined(_WIN64))
|
||||
#ifndef _NC_WIN32_CURSES_H
|
||||
#define _NC_WIN32_CURSES_H 1
|
||||
|
||||
#include <nc_win32.h>
|
||||
|
||||
#if (defined(_WIN32) || defined(_WIN64))
|
||||
struct winconmode
|
||||
{
|
||||
unsigned long dwFlagIn;
|
||||
@ -68,5 +70,6 @@ extern NCURSES_EXPORT(int) _nc_console_flush(void* handle);
|
||||
#undef sleep
|
||||
#define sleep(n) Sleep((n) * 1000)
|
||||
|
||||
#endif /* _NC_WIN32_CURSES_H */
|
||||
#endif /* _WIN32||_WIN64 */
|
||||
|
||||
#endif /* _NC_WIN32_CURSES_H */
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
# $Id: Makefile.in,v 1.189 2025/07/12 14:41:48 tom Exp $
|
||||
# $Id: Makefile.in,v 1.191 2025/08/09 23:14:59 tom Exp $
|
||||
##############################################################################
|
||||
# Copyright 2018-2024,2025 Thomas E. Dickey #
|
||||
# Copyright 1998-2017,2018 Free Software Foundation, Inc. #
|
||||
@ -192,7 +192,6 @@ HEADER_DEPS = @INTERNALS_HDR@ \
|
||||
$(INCDIR)/nc_string.h \
|
||||
$(INCDIR)/nc_termios.h \
|
||||
$(INCDIR)/nc_tparm.h \
|
||||
$(INCDIR)/nc_win32.h \
|
||||
$(INCDIR)/term_entry.h \
|
||||
$(srcdir)/curses.priv.h \
|
||||
$(srcdir)/new_pair.h \
|
||||
|
||||
@ -49,7 +49,7 @@
|
||||
#define CUR SP_TERMTYPE
|
||||
#endif
|
||||
|
||||
MODULE_ID("$Id: lib_color.c,v 1.155 2025/01/18 14:47:35 tom Exp $")
|
||||
MODULE_ID("$Id: lib_color.c,v 1.156 2025/08/08 17:48:18 tom Exp $")
|
||||
|
||||
#ifdef USE_TERM_DRIVER
|
||||
#define CanChange InfoOf(SP_PARM).canchange
|
||||
@ -393,7 +393,9 @@ NCURSES_SP_NAME(start_color) (NCURSES_SP_DCL0)
|
||||
* If using default colors, allocate extra space in table to
|
||||
* allow for default-color as a component of a color-pair.
|
||||
*/
|
||||
SP_PARM->_pair_limit += (1 + (2 * maxcolors));
|
||||
if (maxcolors < maxpairs) {
|
||||
SP_PARM->_pair_limit += (1 + (2 * maxcolors));
|
||||
}
|
||||
#if !NCURSES_EXT_COLORS
|
||||
SP_PARM->_pair_limit = limit_PAIRS(SP_PARM->_pair_limit);
|
||||
#endif
|
||||
|
||||
@ -35,7 +35,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
/*
|
||||
* $Id: curses.priv.h,v 1.708 2025/08/02 19:23:58 tom Exp $
|
||||
* $Id: curses.priv.h,v 1.710 2025/08/10 00:13:33 tom Exp $
|
||||
*
|
||||
* curses.priv.h
|
||||
*
|
||||
@ -2285,12 +2285,6 @@ extern int __MINGW_NOTHROW _nc_mblen(const char *, size_t);
|
||||
|
||||
#endif /* _NC_WINDOWS_NATIVE && !_NC_MSC */
|
||||
|
||||
#if defined(_NC_WINDOWS_NATIVE) || defined(_NC_MINGW)
|
||||
/* see wcwidth.c */
|
||||
extern NCURSES_EXPORT(int) mk_wcwidth(uint32_t);
|
||||
#define wcwidth(ucs) _nc_wcwidth(ucs)
|
||||
#endif
|
||||
|
||||
#if HAVE_MBTOWC && HAVE_MBLEN
|
||||
#define reset_mbytes(state) IGNORE_RC(mblen(NULL, (size_t) 0)), IGNORE_RC(mbtowc(NULL, NULL, (size_t) 0))
|
||||
#define count_mbytes(buffer,length,state) mblen(buffer,length)
|
||||
@ -2511,7 +2505,7 @@ extern NCURSES_EXPORT(int) TINFO_MVCUR(SCREEN*, int, int, int, int);
|
||||
#define TINFO_MVCUR NCURSES_SP_NAME(_nc_mvcur)
|
||||
#endif
|
||||
|
||||
#if defined(EXP_WIN32_DRIVER)
|
||||
#if defined(USE_WIN32CON_DRIVER)
|
||||
#include <nc_win32.h>
|
||||
#endif
|
||||
|
||||
@ -2555,7 +2549,6 @@ extern NCURSES_EXPORT_VAR(TERM_DRIVER) _nc_TINFO_DRIVER;
|
||||
#else
|
||||
#ifdef USE_TERM_DRIVER
|
||||
#if defined(USE_WIN32CON_DRIVER)
|
||||
#include <nc_mingw.h>
|
||||
extern NCURSES_EXPORT_VAR(TERM_DRIVER) _nc_WIN_DRIVER;
|
||||
extern NCURSES_EXPORT(int) _nc_mingw_console_read(SCREEN *sp, HANDLE fd, int *buf);
|
||||
extern NCURSES_EXPORT(int) _nc_mingw_isatty(int fd);
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
# $Id: modules,v 1.127 2020/09/12 17:58:12 tom Exp $
|
||||
# $Id: modules,v 1.128 2025/08/08 23:39:20 tom Exp $
|
||||
##############################################################################
|
||||
# Copyright 2019,2020 Thomas E. Dickey #
|
||||
# Copyright 2019-2020,2025 Thomas E. Dickey #
|
||||
# Copyright 1998-2013,2017 Free Software Foundation, Inc. #
|
||||
# #
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a #
|
||||
@ -235,12 +235,14 @@ version lib $(base) $(HEADER_DEPS)
|
||||
@ port_drivers
|
||||
lib_driver lib $(base) $(HEADER_DEPS)
|
||||
|
||||
# MinGW
|
||||
@ port_win32con
|
||||
gettimeofday lib $(win32con) $(HEADER_DEPS)
|
||||
wcwidth lib $(win32con) $(HEADER_DEPS)
|
||||
widechars lib $(wide) $(HEADER_DEPS)
|
||||
win_driver lib $(win32con) $(HEADER_DEPS)
|
||||
|
||||
# MinGW-W64
|
||||
@ port_win32
|
||||
lib_win32con lib $(tinfo) $(HEADER_DEPS)
|
||||
lib_win32util lib $(tinfo) $(HEADER_DEPS)
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
ncurses6td (6.5+20250802) unstable; urgency=low
|
||||
ncurses6td (6.5+20250809) unstable; urgency=low
|
||||
|
||||
* latest weekly patch
|
||||
|
||||
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 02 Aug 2025 05:11:36 -0400
|
||||
-- Thomas E. Dickey <dickey@invisible-island.net> Fri, 08 Aug 2025 14:04:08 -0400
|
||||
|
||||
ncurses6 (5.9+20131005) unstable; urgency=low
|
||||
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
ncurses6td (6.5+20250802) unstable; urgency=low
|
||||
ncurses6td (6.5+20250809) unstable; urgency=low
|
||||
|
||||
* latest weekly patch
|
||||
|
||||
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 02 Aug 2025 05:11:36 -0400
|
||||
-- Thomas E. Dickey <dickey@invisible-island.net> Fri, 08 Aug 2025 14:04:08 -0400
|
||||
|
||||
ncurses6 (5.9+20131005) unstable; urgency=low
|
||||
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
ncurses6td (6.5+20250802) unstable; urgency=low
|
||||
ncurses6td (6.5+20250809) unstable; urgency=low
|
||||
|
||||
* latest weekly patch
|
||||
|
||||
-- Thomas E. Dickey <dickey@invisible-island.net> Sat, 02 Aug 2025 05:11:36 -0400
|
||||
-- Thomas E. Dickey <dickey@invisible-island.net> Fri, 08 Aug 2025 14:04:08 -0400
|
||||
|
||||
ncurses6 (5.9+20120608) unstable; urgency=low
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
; $Id: mingw-ncurses.nsi,v 1.715 2025/08/02 09:11:36 tom Exp $
|
||||
; $Id: mingw-ncurses.nsi,v 1.716 2025/08/08 18:04:08 tom Exp $
|
||||
|
||||
; TODO add examples
|
||||
; TODO bump ABI to 6
|
||||
@ -10,7 +10,7 @@
|
||||
!define VERSION_MAJOR "6"
|
||||
!define VERSION_MINOR "5"
|
||||
!define VERSION_YYYY "2025"
|
||||
!define VERSION_MMDD "0802"
|
||||
!define VERSION_MMDD "0809"
|
||||
!define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}
|
||||
|
||||
!define MY_ABI "5"
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
Summary: shared libraries for terminal handling
|
||||
Name: mingw32-ncurses6
|
||||
Version: 6.5
|
||||
Release: 20250802
|
||||
Release: 20250809
|
||||
License: X11 License Distribution Modification Variant
|
||||
Group: Development/Libraries
|
||||
URL: https://invisible-island.net/ncurses/
|
||||
@ -144,8 +144,8 @@ popd
|
||||
|
||||
%changelog
|
||||
|
||||
* Sat Aug 02 2025 Thomas E. Dickey
|
||||
- testing ncurses 6.5-20250802
|
||||
* Fri Aug 08 2025 Thomas E. Dickey
|
||||
- testing ncurses 6.5-20250809
|
||||
|
||||
* Sat Feb 25 2023 Thomas Dickey
|
||||
- amend URLs per rpmlint
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
Summary: shared libraries for terminal handling
|
||||
Name: ncurses6
|
||||
Version: 6.5
|
||||
Release: 20250802
|
||||
Release: 20250809
|
||||
License: X11 License Distribution Modification Variant
|
||||
Group: Development/Libraries
|
||||
URL: https://invisible-island.net/ncurses/
|
||||
@ -134,8 +134,8 @@ rm -f test/ncurses
|
||||
|
||||
%changelog
|
||||
|
||||
* Sat Aug 02 2025 Thomas E. Dickey
|
||||
- testing ncurses 6.5-20250802
|
||||
* Fri Aug 08 2025 Thomas E. Dickey
|
||||
- testing ncurses 6.5-20250809
|
||||
|
||||
* Sat Feb 25 2023 Thomas Dickey
|
||||
- amend URLs per rpmlint
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
Summary: Curses library with POSIX thread support.
|
||||
Name: ncursest6
|
||||
Version: 6.5
|
||||
Release: 20250802
|
||||
Release: 20250809
|
||||
License: X11 License Distribution Modification Variant
|
||||
Group: Development/Libraries
|
||||
Source: ncurses-%{version}-%{release}.tgz
|
||||
@ -142,8 +142,8 @@ exit 0
|
||||
|
||||
%changelog
|
||||
|
||||
* Sat Aug 02 2025 Thomas E. Dickey
|
||||
- testing ncurses 6.5-20250802
|
||||
* Fri Aug 08 2025 Thomas E. Dickey
|
||||
- testing ncurses 6.5-20250809
|
||||
|
||||
* Tue Dec 24 2019 Thomas Dickey
|
||||
- drop custom CC_NORMAL warning flags because setting CFLAGS interferes with
|
||||
|
||||
@ -27,7 +27,7 @@
|
||||
* authorization. *
|
||||
****************************************************************************/
|
||||
/*
|
||||
* $Id: demo_new_pair.c,v 1.33 2025/07/05 15:21:56 tom Exp $
|
||||
* $Id: demo_new_pair.c,v 1.34 2025/08/08 15:47:32 tom Exp $
|
||||
*
|
||||
* Demonstrate the alloc_pair() function.
|
||||
*/
|
||||
@ -326,6 +326,7 @@ main(int argc, char *argv[])
|
||||
my_pair = (use_init
|
||||
? next_color(current)
|
||||
: make_color(current));
|
||||
assert(my_pair < COLOR_PAIRS);
|
||||
}
|
||||
} else {
|
||||
my_attrs = next_attr(current);
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
/*
|
||||
* Author: Thomas E. Dickey
|
||||
*
|
||||
* $Id: dots_xcurses.c,v 1.33 2025/07/05 15:21:56 tom Exp $
|
||||
* $Id: dots_xcurses.c,v 1.34 2025/08/08 16:45:28 tom Exp $
|
||||
*
|
||||
* A simple demo of the wide-curses interface used for comparison with termcap.
|
||||
*/
|
||||
@ -54,6 +54,7 @@
|
||||
|
||||
static bool interrupted = FALSE;
|
||||
static long total_chars = 0;
|
||||
static long total_skips = 0;
|
||||
static time_t started;
|
||||
|
||||
#if HAVE_ALLOC_PAIR
|
||||
@ -69,6 +70,8 @@ cleanup(void)
|
||||
fprintf(stderr, "\n\n%ld total cells, rate %.2f/sec\n",
|
||||
total_chars,
|
||||
((double) (total_chars) / (double) (time((time_t *) 0) - started)));
|
||||
if (total_skips)
|
||||
fprintf(stderr, "%ld total skipped\n", total_skips);
|
||||
}
|
||||
|
||||
static void
|
||||
@ -91,6 +94,7 @@ mypair(int fg, int bg)
|
||||
#if HAVE_ALLOC_PAIR
|
||||
if (x_option) {
|
||||
result = alloc_pair(fg, bg);
|
||||
assert(result < COLOR_PAIRS);
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
@ -106,6 +110,8 @@ set_colors(int fg, int bg)
|
||||
int pair = mypair(fg, bg);
|
||||
if (pair > 0) {
|
||||
(void) color_set((short) pair, NewPair(pair));
|
||||
} else {
|
||||
++total_skips;
|
||||
}
|
||||
}
|
||||
|
||||
@ -225,6 +231,8 @@ main(int argc, char *argv[])
|
||||
pair = mypair(fg, bg);
|
||||
if (pair > 0) {
|
||||
InitPair(pair, fg, bg);
|
||||
} else {
|
||||
++total_skips;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
/****************************************************************************
|
||||
* Author: Thomas E. Dickey 1996-on *
|
||||
****************************************************************************/
|
||||
/* $Id: test.priv.h,v 1.224 2025/07/05 15:16:13 tom Exp $ */
|
||||
/* $Id: test.priv.h,v 1.225 2025/08/09 01:04:25 tom Exp $ */
|
||||
|
||||
#ifndef __TEST_PRIV_H
|
||||
#define __TEST_PRIV_H 1
|
||||
@ -1088,7 +1088,7 @@ extern int TABSIZE;
|
||||
#define SIGKILL 9
|
||||
#define getlogin() "username"
|
||||
|
||||
#elif defined(EXP_WIN32_DRIVER)
|
||||
#else
|
||||
|
||||
#if defined(HAVE_NCURSESW_NCURSES_H)
|
||||
#include <ncursesw/nc_win32.h>
|
||||
@ -1098,16 +1098,6 @@ extern int TABSIZE;
|
||||
#include <nc_win32.h>
|
||||
#endif
|
||||
|
||||
#else
|
||||
|
||||
#if defined(HAVE_NCURSESW_NCURSES_H)
|
||||
#include <ncursesw/nc_mingw.h>
|
||||
#elif defined(HAVE_NCURSES_NCURSES_H)
|
||||
#include <ncurses/nc_mingw.h>
|
||||
#else
|
||||
#include <nc_mingw.h>
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
/* conflicts in test/firstlast.c */
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user