+ fix pound-sign mapping in acsc of linux2.6 entry (report by Ingo
Bruckl).
+ additional changes for building with Visual Studio C++ and msys2
(reports/patches by "Maarten Anonymous")
+ build-improvements for Windows 10 and MinGW (patch by Juergen
Pfeifer).
+ fix a typo in curs_printw.3x (patch by William Pursell).
+ fix two errors in infotocap which allowed indexing outside the
buffer (report/testcases by Zhang Gan).
+ update length of strings in infocmp's usage function to restore a
trailing null on the longest string (report/testcase by Zhang Gen).
31 files changed:
dnl
dnl Author: Thomas E. Dickey
dnl
dnl
dnl Author: Thomas E. Dickey
dnl
-dnl $Id: aclocal.m4,v 1.158 2020/07/04 23:32:09 tom Exp $
+dnl $Id: aclocal.m4,v 1.159 2020/07/11 23:11:37 tom Exp $
dnl Macros used in NCURSES Ada95 auto-configuration script.
dnl
dnl These macros are maintained separately from NCURSES. The copyright on
dnl Macros used in NCURSES Ada95 auto-configuration script.
dnl
dnl These macros are maintained separately from NCURSES. The copyright on
done
])dnl
dnl ---------------------------------------------------------------------------
done
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_SHARED_OPTS version: 96 updated: 2020/05/23 19:39:36
+dnl CF_SHARED_OPTS version: 97 updated: 2020/07/11 19:09:29
dnl --------------
dnl --------------
dnl Attempt to determine the appropriate CC/LD options for creating a shared
dnl --------------
dnl --------------
dnl Attempt to determine the appropriate CC/LD options for creating a shared
# Ignore first argument (compiler) and use LD (link.exe) unconditionally
LD="[$]LD"
clopts=()
# Ignore first argument (compiler) and use LD (link.exe) unconditionally
LD="[$]LD"
clopts=()
+ ldopts=("/subsystem:console")
libs=()
isdll=0
while test \[$]# -gt 0; do
libs=()
isdll=0
while test \[$]# -gt 0; do
# Ignore first argument (compiler) and use LD (link.exe) unconditionally
LD="$LD"
clopts=()
# Ignore first argument (compiler) and use LD (link.exe) unconditionally
LD="$LD"
clopts=()
+ ldopts=("/subsystem:console")
libs=()
isdll=0
while test \$# -gt 0; do
libs=()
isdll=0
while test \$# -gt 0; do
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: NEWS,v 1.3514 2020/07/04 23:28:53 tom Exp $
+-- $Id: NEWS,v 1.3519 2020/07/11 23:21:07 tom Exp $
-------------------------------------------------------------------------------
This is a log of changes that ncurses has gone through since Zeyd started
-------------------------------------------------------------------------------
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.
Changes through 1.9.9e did not credit all contributions;
it is not possible to add this information.
+20200711
+ + fix pound-sign mapping in acsc of linux2.6 entry (report by Ingo
+ Bruckl).
+ + additional changes for building with Visual Studio C++ and msys2
+ (reports/patches by "Maarten Anonymous")
+ + build-improvements for Windows 10 and MinGW (patch by Juergen
+ Pfeifer).
+ + fix a typo in curs_printw.3x (patch by William Pursell).
+ + fix two errors in infotocap which allowed indexing outside the
+ buffer (report/testcases by Zhang Gan).
+ + update length of strings in infocmp's usage function to restore a
+ trailing null on the longest string (report/testcase by Zhang Gen).
+
20200704
+ modify version-check with Ada generics to use the same pattern as in
the check for supported gnat versions (report by Pascal Pignard).
20200704
+ modify version-check with Ada generics to use the same pattern as in
the check for supported gnat versions (report by Pascal Pignard).
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: README.MinGW,v 1.10 2020/02/02 23:34:34 tom Exp $
+-- $Id: README.MinGW,v 1.11 2020/07/11 13:31:30 juergen Exp $
-- Author: Juergen Pfeifer
-------------------------------------------------------------------------------
-- Author: Juergen Pfeifer
-------------------------------------------------------------------------------
in order to parse the terminfo paths correctly. Terminfo paths should
always be separated by a seeeemicolon,even when running under MSYS.
in order to parse the terminfo paths correctly. Terminfo paths should
always be separated by a seeeemicolon,even when running under MSYS.
-To support regular expressions properly, ncurses under MinGW should be
-linked against the gnurx regex library, which must be built separately
-under MinGW. See
-
- ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/libgnurx-src-2.5.zip
-
All the options above are - like the whole Windows support -
experimental.
All the options above are - like the whole Windows support -
experimental.
- Workarounds for MinGW's filesystem access are necessary to make infocmp
work (though tic works).
- Workarounds for MinGW's filesystem access are necessary to make infocmp
work (though tic works).
-To support terminfo, we would need to have an ioctl() simulation for the
-serial and networked terminals.
+Recent Windows 10 releases have a new Console implementation that supports
+ANSI-style terminal emulation. Also, there is a new "Windows Terminal" App
+from Microsoft that hosts the new Console in a tabbed user interface. With
+this, it is possble to try using terminfo, the TERM environment varianle
+should be set to ms-terminal.
+
dnl
dnl Author: Thomas E. Dickey 1995-on
dnl
dnl
dnl Author: Thomas E. Dickey 1995-on
dnl
-dnl $Id: aclocal.m4,v 1.916 2020/07/04 23:31:15 tom Exp $
+dnl $Id: aclocal.m4,v 1.920 2020/07/11 23:10:46 tom Exp $
dnl Macros used in NCURSES auto-configuration script.
dnl
dnl These macros are maintained separately from NCURSES. The copyright on
dnl Macros used in NCURSES auto-configuration script.
dnl
dnl These macros are maintained separately from NCURSES. The copyright on
test "$cf_prog_ln_sf" = yes && LN_S="$LN_S -f"
])dnl
dnl ---------------------------------------------------------------------------
test "$cf_prog_ln_sf" = yes && LN_S="$LN_S -f"
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_REGEX version: 13 updated: 2020/03/10 18:53:47
+dnl CF_REGEX version: 14 updated: 2020/07/11 19:09:29
dnl --------
dnl Attempt to determine if we've got one of the flavors of regular-expression
dnl code that we can support.
dnl --------
dnl Attempt to determine if we've got one of the flavors of regular-expression
dnl code that we can support.
cf_regex_libs="regex re"
case $host_os in
(mingw*)
cf_regex_libs="regex re"
case $host_os in
(mingw*)
- cf_regex_libs="gnurx $cf_regex_libs"
+ cf_regex_libs="systre gnurx $cf_regex_libs"
done
])dnl
dnl ---------------------------------------------------------------------------
done
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_SHARED_OPTS version: 96 updated: 2020/05/23 19:39:36
+dnl CF_SHARED_OPTS version: 97 updated: 2020/07/11 19:09:29
dnl --------------
dnl --------------
dnl Attempt to determine the appropriate CC/LD options for creating a shared
dnl --------------
dnl --------------
dnl Attempt to determine the appropriate CC/LD options for creating a shared
# Ignore first argument (compiler) and use LD (link.exe) unconditionally
LD="[$]LD"
clopts=()
# Ignore first argument (compiler) and use LD (link.exe) unconditionally
LD="[$]LD"
clopts=()
+ ldopts=("/subsystem:console")
libs=()
isdll=0
while test \[$]# -gt 0; do
libs=()
isdll=0
while test \[$]# -gt 0; do
-# From configure.in Revision: 1.709 .
+# From configure.in Revision: 1.711 .
# Guess values for system-dependent variables and create Makefiles.
# Generated by Autoconf 2.52.20200111.
#
# Guess values for system-dependent variables and create Makefiles.
# Generated by Autoconf 2.52.20200111.
#
# Ignore first argument (compiler) and use LD (link.exe) unconditionally
LD="$LD"
clopts=()
# Ignore first argument (compiler) and use LD (link.exe) unconditionally
LD="$LD"
clopts=()
+ ldopts=("/subsystem:console")
libs=()
isdll=0
while test \$# -gt 0; do
libs=()
isdll=0
while test \$# -gt 0; do
cf_regex_libs="regex re"
case $host_os in
(mingw*)
cf_regex_libs="regex re"
case $host_os in
(mingw*)
- cf_regex_libs="gnurx $cf_regex_libs"
+ cf_regex_libs="systre gnurx $cf_regex_libs"
fi
WITH_OVERWRITE=$with_overwrite
fi
WITH_OVERWRITE=$with_overwrite
+### At least on MinGW a shared library build without libtool
+### requires adding the additional libs to the link list.
+case $cf_cv_system_name in
+(*mingw32*|*mingw64*)
+ if test "$DFT_LWR_MODEL" != "libtool"; then
+ SHLIB_LIST="$SHLIB_LIST ${LIBS}"
+ fi
+ ;;
+*) ;;
+esac
+
# used to separate tack out of the tree
NCURSES_TREE=
# used to separate tack out of the tree
NCURSES_TREE=
-echo "$as_me:26169: checking for desired basename for form library" >&5
+echo "$as_me:26180: checking for desired basename for form library" >&5
echo $ECHO_N "checking for desired basename for form library... $ECHO_C" >&6
# Check whether --with-form-libname or --without-form-libname was given.
echo $ECHO_N "checking for desired basename for form library... $ECHO_C" >&6
# Check whether --with-form-libname or --without-form-libname was given.
-echo "$as_me:26189: result: $FORM_NAME" >&5
+echo "$as_me:26200: result: $FORM_NAME" >&5
echo "${ECHO_T}$FORM_NAME" >&6
echo "${ECHO_T}$FORM_NAME" >&6
-echo "$as_me:26192: checking for desired basename for menu library" >&5
+echo "$as_me:26203: checking for desired basename for menu library" >&5
echo $ECHO_N "checking for desired basename for menu library... $ECHO_C" >&6
# Check whether --with-menu-libname or --without-menu-libname was given.
echo $ECHO_N "checking for desired basename for menu library... $ECHO_C" >&6
# Check whether --with-menu-libname or --without-menu-libname was given.
-echo "$as_me:26212: result: $MENU_NAME" >&5
+echo "$as_me:26223: result: $MENU_NAME" >&5
echo "${ECHO_T}$MENU_NAME" >&6
echo "${ECHO_T}$MENU_NAME" >&6
-echo "$as_me:26215: checking for desired basename for panel library" >&5
+echo "$as_me:26226: checking for desired basename for panel library" >&5
echo $ECHO_N "checking for desired basename for panel library... $ECHO_C" >&6
# Check whether --with-panel-libname or --without-panel-libname was given.
echo $ECHO_N "checking for desired basename for panel library... $ECHO_C" >&6
# Check whether --with-panel-libname or --without-panel-libname was given.
-echo "$as_me:26235: result: $PANEL_NAME" >&5
+echo "$as_me:26246: result: $PANEL_NAME" >&5
echo "${ECHO_T}$PANEL_NAME" >&6
echo "${ECHO_T}$PANEL_NAME" >&6
-echo "$as_me:26238: checking for desired basename for cxx library" >&5
+echo "$as_me:26249: checking for desired basename for cxx library" >&5
echo $ECHO_N "checking for desired basename for cxx library... $ECHO_C" >&6
# Check whether --with-cxx-libname or --without-cxx-libname was given.
echo $ECHO_N "checking for desired basename for cxx library... $ECHO_C" >&6
# Check whether --with-cxx-libname or --without-cxx-libname was given.
-echo "$as_me:26258: result: $CXX_NAME" >&5
+echo "$as_me:26269: result: $CXX_NAME" >&5
echo "${ECHO_T}$CXX_NAME" >&6
### Construct the list of subdirectories for which we'll customize makefiles
### with the appropriate compile-rules.
echo "${ECHO_T}$CXX_NAME" >&6
### Construct the list of subdirectories for which we'll customize makefiles
### with the appropriate compile-rules.
-echo "$as_me:26264: checking for src modules" >&5
+echo "$as_me:26275: checking for src modules" >&5
echo $ECHO_N "checking for src modules... $ECHO_C" >&6
# dependencies and linker-arguments for test-programs
echo $ECHO_N "checking for src modules... $ECHO_C" >&6
# dependencies and linker-arguments for test-programs
-echo "$as_me:26333: result: $cf_cv_src_modules" >&5
+echo "$as_me:26344: result: $cf_cv_src_modules" >&5
echo "${ECHO_T}$cf_cv_src_modules" >&6
TEST_ARGS="-L${LIB_DIR} $TEST_ARGS"
echo "${ECHO_T}$cf_cv_src_modules" >&6
TEST_ARGS="-L${LIB_DIR} $TEST_ARGS"
(*-D_XOPEN_SOURCE_EXTENDED*)
test -n "$verbose" && echo " moving _XOPEN_SOURCE_EXTENDED to work around g++ problem" 1>&6
(*-D_XOPEN_SOURCE_EXTENDED*)
test -n "$verbose" && echo " moving _XOPEN_SOURCE_EXTENDED to work around g++ problem" 1>&6
-echo "${as_me:-configure}:26594: testing moving _XOPEN_SOURCE_EXTENDED to work around g++ problem ..." 1>&5
+echo "${as_me:-configure}:26605: testing moving _XOPEN_SOURCE_EXTENDED to work around g++ problem ..." 1>&5
CFLAGS="$CFLAGS -D_XOPEN_SOURCE_EXTENDED"
CPPFLAGS=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/-D_XOPEN_SOURCE_EXTENDED//'`
CFLAGS="$CFLAGS -D_XOPEN_SOURCE_EXTENDED"
CPPFLAGS=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/-D_XOPEN_SOURCE_EXTENDED//'`
# Help to automatically enable the extended curses features when using either
# the *-config or the ".pc" files by adding defines.
# Help to automatically enable the extended curses features when using either
# the *-config or the ".pc" files by adding defines.
-echo "$as_me:26605: checking for defines to add to ncurses${USE_CFG_SUFFIX}-config script" >&5
+echo "$as_me:26616: checking for defines to add to ncurses${USE_CFG_SUFFIX}-config script" >&5
echo $ECHO_N "checking for defines to add to ncurses${USE_CFG_SUFFIX}-config script... $ECHO_C" >&6
PKG_CFLAGS=
for cf_loop1 in $CPPFLAGS_after_XOPEN
echo $ECHO_N "checking for defines to add to ncurses${USE_CFG_SUFFIX}-config script... $ECHO_C" >&6
PKG_CFLAGS=
for cf_loop1 in $CPPFLAGS_after_XOPEN
done
test "$cf_found" = no && PKG_CFLAGS="$PKG_CFLAGS $cf_loop1"
done
done
test "$cf_found" = no && PKG_CFLAGS="$PKG_CFLAGS $cf_loop1"
done
-echo "$as_me:26621: result: $PKG_CFLAGS" >&5
+echo "$as_me:26632: result: $PKG_CFLAGS" >&5
echo "${ECHO_T}$PKG_CFLAGS" >&6
# AC_CHECK_SIZEOF demands a literal parameter, no variables. So we do this.
echo "${ECHO_T}$PKG_CFLAGS" >&6
# AC_CHECK_SIZEOF demands a literal parameter, no variables. So we do this.
cf_filter_syms=$cf_dft_filter_syms
test -n "$verbose" && echo " will map symbols to ABI=$cf_cv_abi_version" 1>&6
cf_filter_syms=$cf_dft_filter_syms
test -n "$verbose" && echo " will map symbols to ABI=$cf_cv_abi_version" 1>&6
-echo "${as_me:-configure}:26682: testing will map symbols to ABI=$cf_cv_abi_version ..." 1>&5
+echo "${as_me:-configure}:26693: testing will map symbols to ABI=$cf_cv_abi_version ..." 1>&5
# This is used for the *-config script and *.pc data files.
# This is used for the *-config script and *.pc data files.
-echo "$as_me:26709: checking for linker search path" >&5
+echo "$as_me:26720: checking for linker search path" >&5
echo $ECHO_N "checking for linker search path... $ECHO_C" >&6
if test "${cf_cv_ld_searchpath+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
echo $ECHO_N "checking for linker search path... $ECHO_C" >&6
if test "${cf_cv_ld_searchpath+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
test -z "$cf_cv_ld_searchpath" && cf_cv_ld_searchpath=/usr/lib
fi
test -z "$cf_cv_ld_searchpath" && cf_cv_ld_searchpath=/usr/lib
fi
-echo "$as_me:26773: result: $cf_cv_ld_searchpath" >&5
+echo "$as_me:26784: result: $cf_cv_ld_searchpath" >&5
echo "${ECHO_T}$cf_cv_ld_searchpath" >&6
LD_SEARCHPATH=`echo "$cf_cv_ld_searchpath"|sed -e 's/ /|/g'`
echo "${ECHO_T}$cf_cv_ld_searchpath" >&6
LD_SEARCHPATH=`echo "$cf_cv_ld_searchpath"|sed -e 's/ /|/g'`
: ${CONFIG_STATUS=./config.status}
ac_clean_files_save=$ac_clean_files
ac_clean_files="$ac_clean_files $CONFIG_STATUS"
: ${CONFIG_STATUS=./config.status}
ac_clean_files_save=$ac_clean_files
ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ echo "$as_me:26863: creating $CONFIG_STATUS" >&5
+{ echo "$as_me:26874: creating $CONFIG_STATUS" >&5
echo "$as_me: creating $CONFIG_STATUS" >&6;}
cat >$CONFIG_STATUS <<_ACEOF
#! $SHELL
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 "$ac_cs_version"; exit 0 ;;
--he | --h)
# Conflict between --help and --header
- { { echo "$as_me:27039: error: ambiguous option: $1
+ { { echo "$as_me:27050: 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;}
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.
ac_need_defaults=false;;
# This is an error.
- -*) { { echo "$as_me:27058: error: unrecognized option: $1
+ -*) { { echo "$as_me:27069: 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;}
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" ;;
"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:27181: error: invalid argument: $ac_config_target" >&5
+ *) { { echo "$as_me:27192: error: invalid argument: $ac_config_target" >&5
echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
{ (exit 1); exit 1; }; };;
esac
echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
{ (exit 1); exit 1; }; };;
esac
esac
if test x"$ac_file" != x-; then
esac
if test x"$ac_file" != x-; then
- { echo "$as_me:27680: creating $ac_file" >&5
+ { echo "$as_me:27691: creating $ac_file" >&5
echo "$as_me: creating $ac_file" >&6;}
rm -f "$ac_file"
fi
echo "$as_me: creating $ac_file" >&6;}
rm -f "$ac_file"
fi
-) echo $tmp/stdin ;;
[\\/$]*)
# Absolute (can't be DOS-style, as IFS=:)
-) echo $tmp/stdin ;;
[\\/$]*)
# Absolute (can't be DOS-style, as IFS=:)
- test -f "$f" || { { echo "$as_me:27698: error: cannot find input file: $f" >&5
+ test -f "$f" || { { echo "$as_me:27709: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
echo $f;;
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
echo $f;;
echo $srcdir/$f
else
# /dev/null tree
echo $srcdir/$f
else
# /dev/null tree
- { { echo "$as_me:27711: error: cannot find input file: $f" >&5
+ { { echo "$as_me:27722: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
fi;;
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
if test -n "$ac_seen"; then
ac_used=`grep '@datarootdir@' $ac_item`
if test -z "$ac_used"; then
- { echo "$as_me:27727: WARNING: datarootdir was used implicitly but not set:
+ { echo "$as_me:27738: WARNING: datarootdir was used implicitly but not set:
$ac_seen" >&5
echo "$as_me: WARNING: datarootdir was used implicitly but not set:
$ac_seen" >&2;}
$ac_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
fi
ac_seen=`grep '${datarootdir}' $ac_item`
if test -n "$ac_seen"; then
- { echo "$as_me:27736: WARNING: datarootdir was used explicitly but not set:
+ { echo "$as_me:27747: 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_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':,'`
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:27773: WARNING: Variable $ac_name is used but was not set:
+ { echo "$as_me:27784: 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;}
$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`
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:27784: WARNING: Some variables may not be substituted:
+ { echo "$as_me:27795: WARNING: Some variables may not be substituted:
$ac_seen" >&5
echo "$as_me: WARNING: Some variables may not be substituted:
$ac_seen" >&2;}
$ac_seen" >&5
echo "$as_me: WARNING: Some variables may not be substituted:
$ac_seen" >&2;}
* ) ac_file_in=$ac_file.in ;;
esac
* ) ac_file_in=$ac_file.in ;;
esac
- test x"$ac_file" != x- && { echo "$as_me:27833: creating $ac_file" >&5
+ test x"$ac_file" != x- && { echo "$as_me:27844: 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 "$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=:)
-) echo $tmp/stdin ;;
[\\/$]*)
# Absolute (can't be DOS-style, as IFS=:)
- test -f "$f" || { { echo "$as_me:27844: error: cannot find input file: $f" >&5
+ test -f "$f" || { { echo "$as_me:27855: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
echo $f;;
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
echo $f;;
echo $srcdir/$f
else
# /dev/null tree
echo $srcdir/$f
else
# /dev/null tree
- { { echo "$as_me:27857: error: cannot find input file: $f" >&5
+ { { echo "$as_me:27868: error: cannot find input file: $f" >&5
echo "$as_me: error: cannot find input file: $f" >&2;}
{ (exit 1); exit 1; }; }
fi;;
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
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:27915: $ac_file is unchanged" >&5
+ { echo "$as_me:27926: $ac_file is unchanged" >&5
echo "$as_me: $ac_file is unchanged" >&6;}
else
ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
echo "$as_me: $ac_file is unchanged" >&6;}
else
ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
(cygdll|msysdll|mingw|msvcdll)
test "x$with_shared_cxx" = xno && test -n "$verbose" && echo " overriding CXX_MODEL to SHARED" 1>&6
(cygdll|msysdll|mingw|msvcdll)
test "x$with_shared_cxx" = xno && test -n "$verbose" && echo " overriding CXX_MODEL to SHARED" 1>&6
-echo "${as_me:-configure}:28302: testing overriding CXX_MODEL to SHARED ..." 1>&5
+echo "${as_me:-configure}:28313: testing overriding CXX_MODEL to SHARED ..." 1>&5
dnl
dnl Author: Thomas E. Dickey 1995-on
dnl
dnl
dnl Author: Thomas E. Dickey 1995-on
dnl
-dnl $Id: configure.in,v 1.709 2020/05/31 20:04:09 tom Exp $
+dnl $Id: configure.in,v 1.711 2020/07/11 20:18:40 tom Exp $
dnl Process this file with autoconf to produce a configure script.
dnl
dnl For additional information, see
dnl Process this file with autoconf to produce a configure script.
dnl
dnl For additional information, see
dnl
dnl ---------------------------------------------------------------------------
AC_PREREQ(2.52.20200111)
dnl
dnl ---------------------------------------------------------------------------
AC_PREREQ(2.52.20200111)
-AC_REVISION($Revision: 1.709 $)
+AC_REVISION($Revision: 1.711 $)
AC_INIT(ncurses/base/lib_initscr.c)
AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin)
AC_INIT(ncurses/base/lib_initscr.c)
AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin)
fi
WITH_OVERWRITE=$with_overwrite
fi
WITH_OVERWRITE=$with_overwrite
+### At least on MinGW a shared library build without libtool
+### requires adding the additional libs to the link list.
+case $cf_cv_system_name in
+(*mingw32*|*mingw64*)
+ if test "$DFT_LWR_MODEL" != "libtool"; then
+ SHLIB_LIST="$SHLIB_LIST ${LIBS}"
+ fi
+ ;;
+*) ;;
+esac
+
AC_SUBST(WITH_OVERWRITE)
AC_SUBST(TICS_LIST)
AC_SUBST(TINFO_LIST)
AC_SUBST(WITH_OVERWRITE)
AC_SUBST(TICS_LIST)
AC_SUBST(TINFO_LIST)
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: dist.mk,v 1.1359 2020/07/04 13:08:52 tom Exp $
+# $Id: dist.mk,v 1.1360 2020/07/11 08:26:05 tom Exp $
# Makefile for creating ncurses distributions.
#
# This only needs to be used directly as a makefile by developers, but
# 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 = 2
# These define the major/minor/patch versions of ncurses.
NCURSES_MAJOR = 6
NCURSES_MINOR = 2
-NCURSES_PATCH = 20200704
+NCURSES_PATCH = 20200711
# We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
# We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
* Author: Thomas Dickey, 2008-on *
****************************************************************************/
* Author: Thomas Dickey, 2008-on *
****************************************************************************/
-/* $Id: nc_mingw.h,v 1.8 2020/02/29 15:46:00 anonymous.maarten Exp $ */
+/* $Id: nc_mingw.h,v 1.9 2020/07/11 22:13:19 tom Exp $ */
#ifndef NC_MINGW_H
#define NC_MINGW_H 1
#ifdef _WIN32
#ifndef NC_MINGW_H
#define NC_MINGW_H 1
#ifdef _WIN32
#ifdef WINVER
# if WINVER < 0x0501
# error WINVER must at least be 0x0501
#ifdef WINVER
# if WINVER < 0x0501
# error WINVER must at least be 0x0501
#include <sys/time.h> /* for struct timeval */
#endif
#include <sys/time.h> /* for struct timeval */
#endif
-extern int _nc_gettimeofday(struct timeval *, void *);
+#ifdef _MSC_VER
+#include <winsock2.h> /* for struct timeval */
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include <ncurses_dll.h>
+
+NCURSES_EXPORT(int) _nc_gettimeofday(struct timeval *, void *);
#undef HAVE_GETTIMEOFDAY
#define HAVE_GETTIMEOFDAY 1
#undef HAVE_GETTIMEOFDAY
#define HAVE_GETTIMEOFDAY 1
#undef wcwidth
#define wcwidth(ucs) _nc_wcwidth((wchar_t)(ucs))
#undef wcwidth
#define wcwidth(ucs) _nc_wcwidth((wchar_t)(ucs))
-extern int _nc_wcwidth(wchar_t);
+NCURSES_EXPORT(int) _nc_wcwidth(wchar_t);
+
+#ifdef __cplusplus
+}
+#endif
.\" authorization. *
.\"***************************************************************************
.\"
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_printw.3x,v 1.26 2020/03/14 23:48:47 tom Exp $
+.\" $Id: curs_printw.3x,v 1.27 2020/07/10 23:06:23 William.Pursell Exp $
.TH curs_printw 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
.TH curs_printw 3X ""
.ie \n(.g .ds `` \(lq
.el .ds `` ``
effect, the string that would be output by \fBprintf\fR is output
instead as though \fBwaddstr\fR were used on the given window.
.PP
effect, the string that would be output by \fBprintf\fR is output
instead as though \fBwaddstr\fR were used on the given window.
.PP
-The \fBvwprintw\fR and \fBwv_printw\fR routines are analogous
+The \fBvwprintw\fR and \fBvw_printw\fR routines are analogous
to \fBvprintf\fR [see \fBprintf\fR(3)]
and perform a \fBwprintw\fR using a variable argument list.
The third argument is a \fBva_list\fR, a pointer to a
to \fBvprintf\fR [see \fBprintf\fR(3)]
and perform a \fBwprintw\fR using a variable argument list.
The third argument is a \fBva_list\fR, a pointer to a
# Report bugs and new terminal descriptions to
# bug-ncurses@gnu.org
#
# Report bugs and new terminal descriptions to
# bug-ncurses@gnu.org
#
-# $Revision: 1.807 $
-# $Date: 2020/06/07 00:16:21 $
+# $Revision: 1.808 $
+# $Date: 2020/07/11 20:05:06 $
#
# 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
#
# 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
# 'r' scan line 7
# '_' scan line 9
linux2.6|linux 2.6.x console,
# 'r' scan line 7
# '_' scan line 9
linux2.6|linux 2.6.x console,
- acsc=++\,\,--..00__``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwx
- xyyzz{{||}c~~,
+ acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxy
+ yzz{{||}}~~,
enacs=\E)0, rmacs=^O,
sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5
%t;2%;%?%p6%t;1%;m%?%p9%t\016%e\017%;,
enacs=\E)0, rmacs=^O,
sgr=\E[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5
%t;2%;%?%p6%t;1%;m%?%p9%t\016%e\017%;,
# + use vt100+enq in screen (report by Alexandre Montaron).
# + add screen.linux-s alias (suggested by Alexandre Montaron).
#
# + use vt100+enq in screen (report by Alexandre Montaron).
# + add screen.linux-s alias (suggested by Alexandre Montaron).
#
+# 2020-07-11
+# + fix pound-sign mapping in acsc of linux2.6 entry (report by Ingo
+# Bruckl).
+#
######## SHANTIH! SHANTIH! SHANTIH!
######## SHANTIH! SHANTIH! SHANTIH!
****************************************************************************/
/*
****************************************************************************/
/*
- * $Id: curses.priv.h,v 1.629 2020/06/13 21:58:00 tom Exp $
+ * $Id: curses.priv.h,v 1.630 2020/07/11 20:48:42 anonymous.maarten Exp $
+#if defined(_WIN32) && !defined(_MSC_VER)
/*
* MinGW has wide-character functions, but they do not work correctly.
*/
/*
* MinGW has wide-character functions, but they do not work correctly.
*/
-MODULE_ID("$Id: access.c,v 1.25 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: access.c,v 1.26 2020/07/11 20:55:23 anonymous.maarten Exp $")
#define LOWERCASE(c) ((isalpha(UChar(c)) && isupper(UChar(c))) ? tolower(UChar(c)) : (c))
#define LOWERCASE(c) ((isalpha(UChar(c)) && isupper(UChar(c))) ? tolower(UChar(c)) : (c))
+#ifdef _MSC_VER
+# define ACCESS(FN, MODE) access((FN), (MODE)&(R_OK|W_OK))
+#else
+# define ACCESS access
+#endif
+
NCURSES_EXPORT(char *)
_nc_rootname(char *path)
{
NCURSES_EXPORT(char *)
_nc_rootname(char *path)
{
if (path == 0) {
result = -1;
if (path == 0) {
result = -1;
- } else if (access(path, mode) < 0) {
+ } else if (ACCESS(path, mode) < 0) {
if ((mode & W_OK) != 0
&& errno == ENOENT
&& strlen(path) < PATH_MAX) {
if ((mode & W_OK) != 0
&& errno == ENOENT
&& strlen(path) < PATH_MAX) {
if (head == leaf)
_nc_STRCPY(head, ".", sizeof(head));
if (head == leaf)
_nc_STRCPY(head, ".", sizeof(head));
- result = access(head, R_OK | W_OK | X_OK);
+ result = ACCESS(head, R_OK | W_OK | X_OK);
#include <ctype.h>
#include <tic.h>
#include <ctype.h>
#include <tic.h>
-MODULE_ID("$Id: captoinfo.c,v 1.99 2020/05/25 21:28:29 tom Exp $")
+MODULE_ID("$Id: captoinfo.c,v 1.100 2020/07/08 21:39:54 tom Exp $")
#if 0
#define DEBUG_THIS(p) DEBUG(9, p)
#if 0
#define DEBUG_THIS(p) DEBUG(9, p)
/* we may have to move some trailing mandatory padding up front */
padding = str + strlen(str) - 1;
if (padding > str && *padding == '>') {
/* we may have to move some trailing mandatory padding up front */
padding = str + strlen(str) - 1;
if (padding > str && *padding == '>') {
+ if (padding > (str + 1) && *--padding == '/')
--padding;
while (isdigit(UChar(*padding)) || *padding == '.' || *padding == '*')
padding--;
--padding;
while (isdigit(UChar(*padding)) || *padding == '.' || *padding == '*')
padding--;
-int mk_wcwidth(wchar_t ucs)
+NCURSES_EXPORT(int) mk_wcwidth(wchar_t ucs)
{
/* sorted list of non-overlapping intervals of non-spacing characters */
/* generated by "uniset +cat=Me +cat=Mn +cat=Cf -00AD +1160-11FF +200B c" */
{
/* sorted list of non-overlapping intervals of non-spacing characters */
/* generated by "uniset +cat=Me +cat=Mn +cat=Cf -00AD +1160-11FF +200B c" */
-int mk_wcswidth(const wchar_t *pwcs, size_t n)
+NCURSES_EXPORT(int) mk_wcswidth(const wchar_t *pwcs, size_t n)
* the traditional terminal character-width behaviour. It is not
* otherwise recommended for general use.
*/
* the traditional terminal character-width behaviour. It is not
* otherwise recommended for general use.
*/
-int mk_wcwidth_cjk(wchar_t ucs)
+NCURSES_EXPORT(int) mk_wcwidth_cjk(wchar_t ucs)
{
/* sorted list of non-overlapping intervals of East Asian Ambiguous
* characters, generated by "uniset +WIDTH-A -cat=Me -cat=Mn -cat=Cf c" */
{
/* sorted list of non-overlapping intervals of East Asian Ambiguous
* characters, generated by "uniset +WIDTH-A -cat=Me -cat=Mn -cat=Cf c" */
-int mk_wcswidth_cjk(const wchar_t *pwcs, size_t n)
+NCURSES_EXPORT(int) mk_wcswidth_cjk(const wchar_t *pwcs, size_t n)
*/
#include <curses.priv.h>
*/
#include <curses.priv.h>
-MODULE_ID("$Id: lib_cchar.c,v 1.33 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: lib_cchar.c,v 1.34 2020/07/11 22:55:08 tom Exp $")
/*
* The SuSv2 description leaves some room for interpretation. We'll assume wch
/*
* The SuSv2 description leaves some room for interpretation. We'll assume wch
-MODULE_ID("$Id: widechars.c,v 1.7 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: widechars.c,v 1.8 2020/07/11 20:48:42 anonymous.maarten Exp $")
+#if defined(_WIN32) && !defined(_MSC_VER)
/*
* MinGW has wide-character functions, but they do not work correctly.
*/
/*
* MinGW has wide-character functions, but they do not work correctly.
*/
-MODULE_ID("$Id: gettimeofday.c,v 1.5 2020/02/29 15:46:00 anonymous.maarten Exp $")
+MODULE_ID("$Id: gettimeofday.c,v 1.6 2020/07/11 21:03:53 tom Exp $")
#define JAN1970 116444736000000000LL /* the value for 01/01/1970 00:00 */
#define JAN1970 116444736000000000LL /* the value for 01/01/1970 00:00 */
-#ifdef _MSC_VER
-#include <winsock2.h>
-#endif
-
-int
gettimeofday(struct timeval *tv, void *tz GCC_UNUSED)
{
union {
gettimeofday(struct timeval *tv, void *tz GCC_UNUSED)
{
union {
****************************************************************************/
#include <curses.priv.h>
****************************************************************************/
#include <curses.priv.h>
-MODULE_ID("$Id: wcwidth.c,v 1.3 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: wcwidth.c,v 1.4 2020/07/11 21:02:10 tom Exp $")
#if USE_WIDEC_SUPPORT
#define mk_wcwidth(ucs) _nc_wcwidth(ucs)
#if USE_WIDEC_SUPPORT
#define mk_wcwidth(ucs) _nc_wcwidth(ucs)
#define mk_wcwidth_cjk(ucs) _nc_wcwidth_cjk(ucs)
#define mk_wcswidth_cjk(pwcs, n) _nc_wcswidth_cjk(pwcs, n)
#define mk_wcwidth_cjk(ucs) _nc_wcwidth_cjk(ucs)
#define mk_wcswidth_cjk(pwcs, n) _nc_wcswidth_cjk(pwcs, n)
-extern int mk_wcwidth(wchar_t);
-extern int mk_wcswidth(const wchar_t *, size_t);
-extern int mk_wcwidth_cjk(wchar_t);
-extern int mk_wcswidth_cjk(const wchar_t *, size_t);
+NCURSES_EXPORT(int) mk_wcwidth(wchar_t);
+NCURSES_EXPORT(int) mk_wcswidth(const wchar_t *, size_t);
+NCURSES_EXPORT(int) mk_wcwidth_cjk(wchar_t);
+NCURSES_EXPORT(int) mk_wcswidth_cjk(const wchar_t *, size_t);
#include <wcwidth.h>
#else
#include <wcwidth.h>
#else
-ncurses6 (6.2+20200704) unstable; urgency=low
+ncurses6 (6.2+20200711) unstable; urgency=low
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 04 Jul 2020 09:08:52 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 11 Jul 2020 04:26:05 -0400
ncurses6 (5.9-20131005) unstable; urgency=low
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.2+20200704) unstable; urgency=low
+ncurses6 (6.2+20200711) unstable; urgency=low
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 04 Jul 2020 09:08:52 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 11 Jul 2020 04:26:05 -0400
ncurses6 (5.9-20131005) unstable; urgency=low
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (6.2+20200704) unstable; urgency=low
+ncurses6 (6.2+20200711) unstable; urgency=low
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 04 Jul 2020 09:08:52 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 11 Jul 2020 04:26:05 -0400
ncurses6 (5.9-20120608) unstable; urgency=low
ncurses6 (5.9-20120608) unstable; urgency=low
-; $Id: mingw-ncurses.nsi,v 1.403 2020/07/04 13:08:52 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.404 2020/07/11 08:26:05 tom Exp $\r
\r
; TODO add examples\r
; TODO bump ABI to 6\r
\r
; TODO add examples\r
; TODO bump ABI to 6\r
!define VERSION_MAJOR "6"\r
!define VERSION_MINOR "2"\r
!define VERSION_YYYY "2020"\r
!define VERSION_MAJOR "6"\r
!define VERSION_MINOR "2"\r
!define VERSION_YYYY "2020"\r
-!define VERSION_MMDD "0704"\r
+!define VERSION_MMDD "0711"\r
!define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}\r
\r
!define MY_ABI "5"\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.2
Summary: shared libraries for terminal handling
Name: mingw32-ncurses6
Version: 6.2
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
Summary: shared libraries for terminal handling
Name: ncurses6
Version: 6.2
Summary: shared libraries for terminal handling
Name: ncurses6
Version: 6.2
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
Summary: Curses library with POSIX thread support.
Name: ncursest6
Version: 6.2
Summary: Curses library with POSIX thread support.
Name: ncursest6
Version: 6.2
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
#include "termsort.c" /* this C file is generated */
#include <parametrized.h> /* so is this */
#include "termsort.c" /* this C file is generated */
#include <parametrized.h> /* so is this */
-MODULE_ID("$Id: dump_entry.c,v 1.178 2020/07/04 20:00:29 tom Exp $")
+MODULE_ID("$Id: dump_entry.c,v 1.179 2020/07/08 21:21:11 tom Exp $")
#define DISCARD(string) string = ABSENT_STRING
#define PRINTF (void) printf
#define DISCARD(string) string = ABSENT_STRING
#define PRINTF (void) printf
char *s = srccap, *d = buffer;
int need = 3 + (int) strlen(name);
while ((*d = *s++) != 0) {
char *s = srccap, *d = buffer;
int need = 3 + (int) strlen(name);
while ((*d = *s++) != 0) {
- if ((d - buffer + 1) >= (int) sizeof(buffer)) {
+ if ((d - buffer + 2) >= (int) sizeof(buffer)) {
fprintf(stderr,
"%s: value for %s is too long\n",
_nc_progname,
fprintf(stderr,
"%s: value for %s is too long\n",
_nc_progname,
-MODULE_ID("$Id: infocmp.c,v 1.144 2020/02/02 23:34:34 tom Exp $")
+MODULE_ID("$Id: infocmp.c,v 1.145 2020/07/07 20:28:47 tom Exp $")
#define MAX_STRING 1024 /* maximum formatted string */
#define MAX_STRING 1024 /* maximum formatted string */
DATA("Options:")
};
#undef DATA
DATA("Options:")
};
#undef DATA
+ /* length is given here so the compiler can make everything readonly */
- static const char options[][45] =
+ static const char options[][46] =
{
" -0 print single-row"
," -1 print single-column"
{
" -0 print single-row"
," -1 print single-column"
tname[termcount]);
status = _nc_read_entry2(tname[termcount],
tname[termcount]);
status = _nc_read_entry2(tname[termcount],
- tfile[termcount],
- &entries[termcount].tterm);
+ tfile[termcount],
+ &entries[termcount].tterm);
* authorization. *
****************************************************************************/
/*
* authorization. *
****************************************************************************/
/*
- * $Id: picsmap.c,v 1.132 2020/02/02 23:34:34 tom Exp $
+ * $Id: picsmap.c,v 1.134 2020/07/11 23:01:49 tom Exp $
*
* Author: Thomas E. Dickey
*
*
* Author: Thomas E. Dickey
*
+#define LOWERCASE(c) ((isalpha(UChar(c)) && isupper(UChar(c))) ? tolower(UChar(c)) : (c))
+
+static int
+CaselessCmp(const char *a, const char *b)
+{ /* strcasecmp isn't portable */
+ while (*a && *b) {
+ int cmp = LOWERCASE(*a) - LOWERCASE(*b);
+ if (cmp != 0)
+ break;
+ a++, b++;
+ }
+ return LOWERCASE(*a) - LOWERCASE(*b);
+}
+
static RGB_NAME *
lookup_rgb(const char *name)
{
static RGB_NAME *
lookup_rgb(const char *name)
{
if (rgb_table != 0) {
int n;
for (n = 0; rgb_table[n].name != 0; ++n) {
if (rgb_table != 0) {
int n;
for (n = 0; rgb_table[n].name != 0; ++n) {
- if (!strcasecmp(name, rgb_table[n].name)) {
+ if (!CaselessCmp(name, rgb_table[n].name)) {
result = &rgb_table[n];
break;
}
result = &rgb_table[n];
break;
}
/****************************************************************************
* Author: Thomas E. Dickey 1996-on *
****************************************************************************/
/****************************************************************************
* Author: Thomas E. Dickey 1996-on *
****************************************************************************/
-/* $Id: test.priv.h,v 1.186 2020/05/10 00:36:06 tom Exp $ */
+/* $Id: test.priv.h,v 1.187 2020/07/11 23:01:49 tom Exp $ */
#ifndef __TEST_PRIV_H
#define __TEST_PRIV_H 1
#ifndef __TEST_PRIV_H
#define __TEST_PRIV_H 1
#include <assert.h>
#include <ctype.h>
#include <assert.h>
#include <ctype.h>
+#if defined(_MSC_VER)
+#undef popen
+#define popen(s,n) _popen(s,n)
+#undef pclose
+#define pclose(s) _pclose(s)
+#endif
+
#ifndef GCC_NORETURN
#define GCC_NORETURN /* nothing */
#endif
#ifndef GCC_NORETURN
#define GCC_NORETURN /* nothing */
#endif