diff --git a/cursescheck b/cursescheck index 5d61267..d1af9cc 100644 --- a/cursescheck +++ b/cursescheck @@ -14,7 +14,7 @@ # Author: Werner Fink # -typeset -i rep=0 line=0 color=0 +typeset -i rep=0 line=0 color=0 hpa=0 ech=0 for s in 0 1 2 do test -c /proc/$$/fd/$s || { echo "Missing /proc/$$/fd/$s" 1>&2; exit 1; } @@ -60,6 +60,14 @@ if test -n "$(infocmp -T $TERM -1 | grep "colors#")" then let color++ fi +if test -n "$(infocmp -T $TERM -1 | grep "hpa=")" +then + let hpa++ +fi +if test -n "$(infocmp -T $TERM -1 | grep "ech=")" +then + let ech++ +fi # # Restore screen at exit @@ -147,6 +155,7 @@ tput cup $line 0 tput cvvis echo -n "OK> " read -t 5 yesno +tput civis # # Could use clear @@ -170,6 +179,7 @@ then tput cup $row $col tput -S <<-! enacs + civis smacs ! if ((color > 0)) @@ -186,15 +196,15 @@ then do tput cup $((row+c)) $col echo -ne ${acsn[0x78]} - ((color > 0)) && tput ech $cx - tput hpa $((col+cx+1)) + ((color > 0 && ech > 0)) && tput ech $cx + ((hpa > 0)) && tput hpa $((col+cx+1)) || tput cup $((row+c)) $((col+cx+1)) echo -ne ${acsn[0x78]} done tput cup $((row+c)) $col echo -ne ${acsn[0x6d]} for ((c=0;c 0)) + if ((color > 0 && ech > 0)) then tput -S <<-! setab 0 @@ -212,6 +222,16 @@ then setab 4 setaf 7 ! + else + tput rev + for ((c=1;c<5;c++)) + do + tput cup $((row+c)) $((col+cx+2)) + echo -n " " + done + tput cup $((row+c)) $((col+2)) + printf ' %.0s' $(eval echo {1..$((cx+2))}) + tput sgr0 fi tput -S <<-! rmacs @@ -223,14 +243,13 @@ then tput cvvis echo -n "OK> " read -t 5 yesno + tput civis else - echo Terminal TERM=$TERM has no ASC Line Graphics. Done - tput -S <<-! - cup 0 0 - sgr0 - ed - rmcup - ! + echo Terminal TERM=$TERM has no ASC Line Graphics. + tput cvvis + echo -n "OK> " + read -t 5 yesno + tput civis fi # @@ -272,6 +291,7 @@ then ! fi tput enacs + tput civis echo -ne ${ul} for ((c=0;c<$cx;c++)); do echo -ne ${hl}; done echo -ne ${ur} @@ -279,15 +299,15 @@ then do tput cup $((row+c)) $col echo -ne ${vl} - ((color > 0)) && tput ech $cx - tput hpa $((col+cx+1)) + ((color > 0 && ech > 0)) && tput ech $cx + ((hpa > 0)) && tput hpa $((col+cx+1)) || tput cup $((row+c)) $((col+cx+1)) echo -ne ${vl} done tput cup $((row+c)) $col echo -ne ${dl} for ((c=0;c<$cx;c++)); do echo -ne ${hl}; done echo -ne ${dr} - if ((color > 0)) + if ((color > 0 && ech > 0)) then tput -S <<-! setab 0 @@ -305,6 +325,16 @@ then setab 4 setaf 7 ! + else + tput rev + for ((c=1;c<5;c++)) + do + tput cup $((row+c)) $((col+cx+2)) + echo -n " " + done + tput cup $((row+c)) $((col+2)) + printf ' %.0s' $(eval echo {1..$((cx+2))}) + tput sgr0 fi tput cup $((row+2)) $((col+4)) echo -n "" @@ -313,14 +343,13 @@ then tput cvvis echo -n "OK> " read -t 5 yesno + tput civis else - echo Terminal TERM=$TERM has no ASC Line Graphics. Done - tput -S <<-! - cup 0 0 - sgr0 - ed - rmcup - ! + echo Terminal TERM=$TERM has no UTF-8 Line Graphics. + tput cvvis + echo -n "OK> " + read -t 5 yesno + tput civis fi # @@ -367,6 +396,7 @@ then fi tput -S <<-! enacs + civis smacs cup $row $col ! @@ -377,7 +407,7 @@ then do tput cup $((row+c)) $col echo -ne ${acsn[0x78]} - tput hpa $((col+cx+1)) + ((hpa > 0)) && tput hpa $((col+cx+1)) || tput cup $((row+c)) $((col+cx+1)) echo -ne ${acsn[0x78]} done tput cup $((row+c)) $col @@ -387,7 +417,7 @@ then tput -S <<-! rmacs ! - if ((color > 0)) + if ((color > 0 && ech > 0)) then tput -S <<-! cup $((row+1)) $((col+1)) @@ -411,6 +441,16 @@ then setab 4 setaf 7 ! + else + tput rev + for ((c=1;c<5;c++)) + do + tput cup $((row+c)) $((col+cx+2)) + echo -n " " + done + tput cup $((row+c)) $((col+2)) + printf ' %.0s' $(eval echo {1..$((cx+2))}) + tput sgr0 fi tput cup $((row+2)) $((col+4)) echo -n "" diff --git a/ncurses-6.2-patches.tar.bz2 b/ncurses-6.2-patches.tar.bz2 index db1c10c..f769808 100644 --- a/ncurses-6.2-patches.tar.bz2 +++ b/ncurses-6.2-patches.tar.bz2 @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a028cf09a9c8314dc75f06b06b717dfdadd65dd64319ed22b3e4d4ac9dbff372 -size 2037995 +oid sha256:3a7550003a460456f6cc9df0c36ae19f5475acc2e4d57e7825902f8a55b2cfc4 +size 2162074 diff --git a/ncurses-6.2.dif b/ncurses-6.2.dif index 9cfa924..e19486a 100644 --- a/ncurses-6.2.dif +++ b/ncurses-6.2.dif @@ -1,7 +1,7 @@ --- aclocal.m4 | 40 ++++++++-------- configure | 42 +++++++++------- - include/curses.h.in | 3 + + include/curses.h.in | 5 +- include/termcap.h.in | 2 include/tic.h | 4 - man/man_db.renames | 2 @@ -19,10 +19,10 @@ progs/Makefile.in | 4 - test/test.priv.h | 4 - test/tracemunch | 2 - 20 files changed, 232 insertions(+), 69 deletions(-) + 20 files changed, 233 insertions(+), 70 deletions(-) --- aclocal.m4 -+++ aclocal.m4 2021-03-22 08:38:25.448950138 +0000 ++++ aclocal.m4 2021-03-25 07:31:47.855523893 +0000 @@ -639,7 +639,7 @@ AC_CHECK_SIZEOF(bool,,[ AC_CACHE_CHECK(for type of bool, cf_cv_type_of_bool,[ rm -f cf_test.out @@ -32,7 +32,7 @@ #include #if defined(__cplusplus) -@@ -5614,12 +5614,15 @@ cat >>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <\$TMP CF_EOF if test -n "$cf_compress" ; then -@@ -5744,9 +5747,9 @@ cat >>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <&6 +@@ -7439,7 +7439,7 @@ echo "${ECHO_T}$with_pcre2" >&6 if test "x$with_pcre2" != xno ; then cf_with_pcre2_ok=no @@ -170,7 +170,7 @@ do if test "$PKG_CONFIG" != none && "$PKG_CONFIG" --exists "$cf_with_pcre2"; then -@@ -14472,12 +14472,15 @@ cat >>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <\$TMP CF_EOF if test -n "$cf_compress" ; then -@@ -14602,9 +14605,9 @@ cat >>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man < + #undef GCC_NORETURN + #define GCC_NORETURN _Noreturn @@ -198,6 +198,9 @@ typedef @cf_cv_typeof_chtype@ chtype; typedef @cf_cv_typeof_mmask_t@ mmask_t; #endif @@ -301,7 +310,7 @@ * We need FILE, etc. Include this before checking any feature symbols. */ --- include/termcap.h.in -+++ include/termcap.h.in 2021-03-22 08:38:25.448950138 +0000 ++++ include/termcap.h.in 2021-03-25 07:31:47.863523743 +0000 @@ -47,6 +47,8 @@ extern "C" { #endif /* __cplusplus */ @@ -312,7 +321,7 @@ #undef NCURSES_OSPEED --- include/tic.h -+++ include/tic.h 2021-03-22 08:38:25.448950138 +0000 ++++ include/tic.h 2021-03-25 07:31:47.863523743 +0000 @@ -237,12 +237,12 @@ struct user_table_entry */ @@ -329,7 +338,7 @@ #define CANCELLED_STRING (char *)(-1) --- man/man_db.renames -+++ man/man_db.renames 2021-03-22 08:38:25.452950063 +0000 ++++ man/man_db.renames 2021-03-25 07:31:47.863523743 +0000 @@ -164,6 +164,7 @@ term.7 term.7 term_variables.3x terminfo_variables.3ncurses terminfo.5 terminfo.5 @@ -347,7 +356,7 @@ # getty.1 getty.8 --- man/ncurses.3x -+++ man/ncurses.3x 2021-03-22 08:38:25.452950063 +0000 ++++ man/ncurses.3x 2021-03-25 07:31:47.863523743 +0000 @@ -139,6 +139,10 @@ after the shell environment variable \fB [See \fBterminfo\fR(\*n) for further details.] .SS Datatypes @@ -360,7 +369,7 @@ called \fIwindows\fR, which can be thought of as two-dimensional arrays of characters representing all or part of a CRT screen. --- misc/gen-pkgconfig.in -+++ misc/gen-pkgconfig.in 2021-03-22 08:38:25.452950063 +0000 ++++ misc/gen-pkgconfig.in 2021-03-25 07:31:47.863523743 +0000 @@ -92,6 +92,9 @@ do -specs*) # ignore linker specs-files which were used to build library continue @@ -401,7 +410,7 @@ if [ $name = $MAIN_LIBRARY ] --- misc/terminfo.src -+++ misc/terminfo.src 2021-03-22 08:38:25.452950063 +0000 ++++ misc/terminfo.src 2021-03-25 07:31:47.867523668 +0000 @@ -305,7 +305,9 @@ dumb|80-column dumb tty, am, cols#80, @@ -650,7 +659,7 @@ s1ds=\E(0, sgr0=\E[0m\E(B, use=ibm5154, ibm5081-c|ibmmpel-c|IBM 5081 1024x1024 256/4096 Megapel enhanced color display, --- ncurses/Makefile.in -+++ ncurses/Makefile.in 2021-03-22 08:38:25.452950063 +0000 ++++ ncurses/Makefile.in 2021-03-25 07:31:47.867523668 +0000 @@ -230,7 +230,7 @@ $(DESTDIR)$(libdir) : ../lib : ; mkdir $@ @@ -661,7 +670,7 @@ ./lib_gen.c : $(base)/MKlib_gen.sh ../include/curses.h $(SHELL) -e $(base)/MKlib_gen.sh "$(CPP) $(CPPFLAGS)" "$(AWK)" generated <../include/curses.h >$@ --- ncurses/curses.priv.h -+++ ncurses/curses.priv.h 2021-03-22 08:38:25.456949988 +0000 ++++ ncurses/curses.priv.h 2021-03-25 07:31:47.867523668 +0000 @@ -2277,6 +2277,8 @@ extern NCURSES_EXPORT(char *) _nc_tracec extern NCURSES_EXPORT(char *) _nc_tracemouse (SCREEN *, MEVENT const *); extern NCURSES_EXPORT(char *) _nc_trace_mmask_t (SCREEN *, mmask_t); @@ -672,7 +681,7 @@ extern NCURSES_EXPORT(int) _nc_freewin (WINDOW *); extern NCURSES_EXPORT(int) _nc_getenv_num (const char *); --- ncurses/run_cmd.sh -+++ ncurses/run_cmd.sh 2021-03-22 08:38:25.456949988 +0000 ++++ ncurses/run_cmd.sh 2021-03-25 07:31:47.867523668 +0000 @@ -0,0 +1,11 @@ +#!/bin/sh + @@ -686,7 +695,7 @@ + +exec ${1+"$@"} --- ncurses/tinfo/MKfallback.sh -+++ ncurses/tinfo/MKfallback.sh 2021-03-22 08:38:25.456949988 +0000 ++++ ncurses/tinfo/MKfallback.sh 2021-03-25 07:31:47.867523668 +0000 @@ -74,6 +74,12 @@ else tmp_info= fi @@ -719,7 +728,7 @@ done --- ncurses/tinfo/access.c -+++ ncurses/tinfo/access.c 2021-03-22 08:38:25.456949988 +0000 ++++ ncurses/tinfo/access.c 2021-03-25 07:31:47.867523668 +0000 @@ -31,6 +31,10 @@ * Author: Thomas E. Dickey * ****************************************************************************/ @@ -763,7 +772,7 @@ _nc_access(const char *path, int mode) { --- ncurses/tinfo/lib_setup.c -+++ ncurses/tinfo/lib_setup.c 2021-03-22 08:38:25.456949988 +0000 ++++ ncurses/tinfo/lib_setup.c 2021-03-25 07:31:47.867523668 +0000 @@ -613,6 +613,9 @@ _nc_locale_breaks_acs(TERMINAL *termp) } else if ((value = tigetnum("U8")) >= 0) { result = value; /* use extension feature */ @@ -775,7 +784,7 @@ result = 1; /* always broken */ } else if (strstr(env, "screen") != 0 --- ncurses/tinfo/read_entry.c -+++ ncurses/tinfo/read_entry.c 2021-03-22 08:38:25.456949988 +0000 ++++ ncurses/tinfo/read_entry.c 2021-03-25 07:31:47.867523668 +0000 @@ -551,6 +551,7 @@ _nc_read_file_entry(const char *const fi FILE *fp = 0; int code; @@ -793,7 +802,7 @@ return (code); } --- ncurses/tinfo/read_termcap.c -+++ ncurses/tinfo/read_termcap.c 2021-03-22 08:38:25.456949988 +0000 ++++ ncurses/tinfo/read_termcap.c 2021-03-25 07:31:47.867523668 +0000 @@ -323,14 +323,18 @@ _nc_getent( */ if (fd >= 0) { @@ -840,7 +849,7 @@ } if (copied != 0) --- progs/Makefile.in -+++ progs/Makefile.in 2021-03-22 08:38:25.456949988 +0000 ++++ progs/Makefile.in 2021-03-25 07:31:47.867523668 +0000 @@ -101,7 +101,7 @@ CFLAGS_LIBTOOL = $(CCFLAGS) CFLAGS_NORMAL = $(CCFLAGS) -DNCURSES_STATIC CFLAGS_DEBUG = $(CCFLAGS) -DNCURSES_STATIC @CC_G_OPT@ -DTRACE @@ -860,7 +869,7 @@ LDFLAGS_DEFAULT = $(LDFLAGS_@DFT_UPR_MODEL@) --- test/test.priv.h -+++ test/test.priv.h 2021-03-22 08:38:25.456949988 +0000 ++++ test/test.priv.h 2021-03-25 07:31:47.867523668 +0000 @@ -1037,12 +1037,12 @@ extern char *_nc_strstr(const char *, co #endif @@ -877,7 +886,7 @@ #define CANCELLED_STRING (char *)(-1) --- test/tracemunch -+++ test/tracemunch 2021-03-22 09:05:17.914573340 +0000 ++++ test/tracemunch 2021-03-25 07:31:47.867523668 +0000 @@ -1,4 +1,4 @@ -#!/usr/bin/env perl +#!/usr/bin/perl diff --git a/ncurses.changes b/ncurses.changes index 957512e..d3eb1d3 100644 --- a/ncurses.changes +++ b/ncurses.changes @@ -1,3 +1,11 @@ +------------------------------------------------------------------- +Thu Mar 25 07:31:16 UTC 2021 - Dr. Werner Fink + +- Add ncurses patch 20210323 + + add configure option --enable-stdnoreturn, making the _Noreturn + keyword optional to ease transition (prompted by report by + Rajeev V Pillai). + ------------------------------------------------------------------- Tue Mar 23 10:07:04 UTC 2021 - Dr. Werner Fink diff --git a/ncurses.spec b/ncurses.spec index d45567e..bd2d911 100644 --- a/ncurses.spec +++ b/ncurses.spec @@ -337,9 +337,6 @@ mv tack-* tack %patch1 -p0 -b .327x %patch2 -p0 -b .hs %patch0 -p0 -b .p0 -# -# Avoiud trouble with existing stdnorerturn.h -sed -ri 's/@HAVE_STDNORETURN_H@/0/' include/curses.h.in %build #