diff --git a/ncurses-6.3.tar.gz b/ncurses-6.4-20221231.tgz similarity index 33% rename from ncurses-6.3.tar.gz rename to ncurses-6.4-20221231.tgz index f3482d93a1382aa86577befb787343845950e3c7..e84ddd17aa6139bd7de05a1e1f7b892fbf1d48cb 100644 Binary files a/ncurses-6.3.tar.gz and b/ncurses-6.4-20221231.tgz differ diff --git a/ncurses-config.patch b/ncurses-config.patch new file mode 100644 index 0000000000000000000000000000000000000000..fc326fc584159c725e7f29c8c03d79029cdaeebb --- /dev/null +++ b/ncurses-config.patch @@ -0,0 +1,56 @@ +diff -up ncurses-6.3-20221126/misc/gen-pkgconfig.in.config ncurses-6.3-20221126/misc/gen-pkgconfig.in +--- ncurses-6.3-20221126/misc/gen-pkgconfig.in.config 2022-10-08 18:45:20.000000000 +0200 ++++ ncurses-6.3-20221126/misc/gen-pkgconfig.in 2022-11-29 17:04:43.353766420 +0100 +@@ -83,7 +83,7 @@ if [ "$includedir" != "/usr/include" ]; + fi + + lib_flags= +-for opt in -L$libdir @EXTRA_PKG_LDFLAGS@ @LIBS@ ++for opt in -L$libdir @LIBS@ + do + case $opt in + -l*) # LIBS is handled specially below +diff -up ncurses-6.3-20221126/misc/ncurses-config.in.config ncurses-6.3-20221126/misc/ncurses-config.in +--- ncurses-6.3-20221126/misc/ncurses-config.in.config 2022-07-26 23:36:28.000000000 +0200 ++++ ncurses-6.3-20221126/misc/ncurses-config.in 2022-11-29 17:06:04.381597412 +0100 +@@ -41,7 +41,6 @@ exec_prefix="@exec_prefix@" + + bindir="@bindir@" + includedir="@includedir@" +-libdir="@libdir@" + datarootdir="@datarootdir@" + datadir="@datadir@" + mandir="@mandir@" +@@ -101,7 +100,7 @@ fi + # There is no portable way to find the list of standard library directories. + # Require a POSIX shell anyway, to keep this simple. + lib_flags= +-for opt in -L$libdir @EXTRA_PKG_LDFLAGS@ $LIBS ++for opt in $LIBS + do + case $opt in + -specs*) # ignore linker specs-files which were used to build library +@@ -120,13 +119,13 @@ do + lib_check=`echo "x$opt" | sed -e 's/^.-L//'` + [ -d "$lib_check" ] || continue + case "$lib_check" in +- @LD_SEARCHPATH@) # skip standard libdir ++ ////) # skip standard libdir (disabled for multilib) + if [ "$lib_check" = "$libdir" ] + then + lib_first=yes + IFS_save="$IFS" + IFS='|' +- LIBDIRS="@LD_SEARCHPATH@" ++ LIBDIRS="" + for lib_check in $LIBDIRS + do + if [ -d "$lib_check" ] +@@ -274,7 +273,6 @@ ENDECHO + echo "$INCS" + ;; + --libdir) +- echo "${libdir}" + ;; + --mandir) + echo "${mandir}" diff --git a/ncurses-kbs.patch b/ncurses-kbs.patch new file mode 100644 index 0000000000000000000000000000000000000000..5d80ebc3d2486c5cb6f7d3d3ff6a151ebb3c594c --- /dev/null +++ b/ncurses-kbs.patch @@ -0,0 +1,46 @@ +diff -up ncurses-6.3-20221126/misc/terminfo.src.kbs ncurses-6.3-20221126/misc/terminfo.src +--- ncurses-6.3-20221126/misc/terminfo.src.kbs 2022-11-29 17:11:34.557911207 +0100 ++++ ncurses-6.3-20221126/misc/terminfo.src 2022-11-29 17:13:11.646709427 +0100 +@@ -6698,7 +6698,7 @@ + enacs=\E(B\E)0, flash=\E[?5h$<100/>\E[?5l, home=\E[H, + ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, + ind=\n, is1=\E[?47l\E=\E[?1l, +- is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, kbs=^H, ++ is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, + kcbt=\E[Z, kmous=\E[M, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O, + rmir=\E[4l, rmkx=\E>, rmso=\E[27m, rmul=\E[24m, + rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H, +@@ -6709,7 +6709,7 @@ + %p9%t\016%e\017%;, + sgr0=\E[0m\017, smacs=^N, smir=\E[4h, smkx=\E=, smso=\E[7m, + smul=\E[4m, tbc=\E[3g, use=xterm+alt47, use=vt100+enq, +- use=rxvt+pcfkeys, use=vt220+cvis, use=vt220+keypad, ++ use=rxvt+pcfkeys, use=vt220+cvis, use=vt220+keypad, use=xterm+kbs, + # Key Codes from rxvt reference: + # + # Note: Shift + F1-F10 generates F11-F20 +@@ -8367,7 +8367,7 @@ + dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, + enacs=\E(B\E)0, flash=\Eg, home=\E[H, hpa=\E[%i%p1%dG, + ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, +- ind=\n, indn=\E[%p1%dS, is2=\E)0, kbs=^H, kcbt=\E[Z, ++ ind=\n, indn=\E[%p1%dS, is2=\E)0, kcbt=\E[Z, + kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP, + kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR, + kf4=\EOS, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, +@@ -8380,6 +8380,7 @@ + smso=\E[3m, smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd, + E0=\E(B, S0=\E(%p1%c, use=vt220+pcedit, + use=xterm+alt1049, use=ecma+color, use=vt100+enq, ++ use=xterm+kbs, + + screen|VT 100/ANSI X3.64 virtual terminal, + use=screen4, +@@ -8509,6 +8510,7 @@ + # on Solaris because Sun's curses implementation gets confused. + screen.teraterm|disable ncv in teraterm, + ncv#127, ++ kbs=^H, + acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i + \316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u + \264v\301w\302x\263y\363z\362{\343|\330}\234~\376, diff --git a/ncurses-libs.patch b/ncurses-libs.patch new file mode 100644 index 0000000000000000000000000000000000000000..401da11b9de65ea291b213a24e33a776d7ac8e39 --- /dev/null +++ b/ncurses-libs.patch @@ -0,0 +1,58 @@ +diff -up ncurses-6.2-20210306/c++/Makefile.in.libs ncurses-6.2-20210306/c++/Makefile.in +--- ncurses-6.2-20210306/c++/Makefile.in.libs 2021-01-23 21:42:08.000000000 +0100 ++++ ncurses-6.2-20210306/c++/Makefile.in 2021-03-11 12:02:29.576741101 +0100 +@@ -118,7 +118,7 @@ SHLIB_LIST = $(SHLIB_DIRS) \ + -l@FORM_NAME@@USE_LIB_SUFFIX@ \ + -l@MENU_NAME@@USE_LIB_SUFFIX@ \ + -l@PANEL_NAME@@USE_LIB_SUFFIX@ \ +- -lncurses@USE_LIB_SUFFIX@ @SHLIB_LIST@ ++ -lncurses@USE_LIB_SUFFIX@ #@SHLIB_LIST@ + + LIBROOT = ncurses++ + +@@ -153,8 +153,7 @@ LDFLAGS_SHARED = $(TEST_LDFLAGS) $(CFLAG + LDFLAGS_DEFAULT = $(LINK_@DFT_UPR_MODEL@) $(LDFLAGS_@DFT_UPR_MODEL@) + + # flags for library built by this makefile +-LDFLAGS = $(TEST_ARGS) @LDFLAGS@ \ +- @LD_MODEL@ $(TEST_LIBS) @LIBS@ $(CXXLIBS) ++LDFLAGS = @LDFLAGS@ @LD_MODEL@ @LIBS@ $(CXXLIBS) + + AUTO_SRC = \ + etip.h +diff -up ncurses-6.2-20210306/form/Makefile.in.libs ncurses-6.2-20210306/form/Makefile.in +--- ncurses-6.2-20210306/form/Makefile.in.libs 2021-01-23 21:42:08.000000000 +0100 ++++ ncurses-6.2-20210306/form/Makefile.in 2021-03-11 12:00:59.001470707 +0100 +@@ -110,7 +110,7 @@ LINK = $(LIBTOOL_LINK) + LDFLAGS = @LDFLAGS@ @LD_MODEL@ @LIBS@ + + SHLIB_DIRS = -L../lib +-SHLIB_LIST = $(SHLIB_DIRS) -lncurses@USE_LIB_SUFFIX@ @SHLIB_LIST@ ++SHLIB_LIST = $(SHLIB_DIRS) -lncurses@USE_LIB_SUFFIX@ #@SHLIB_LIST@ + + RPATH_LIST = @RPATH_LIST@ + RESULTING_SYMS = @RESULTING_SYMS@ +diff -up ncurses-6.2-20210306/menu/Makefile.in.libs ncurses-6.2-20210306/menu/Makefile.in +--- ncurses-6.2-20210306/menu/Makefile.in.libs 2020-08-29 16:50:45.000000000 +0200 ++++ ncurses-6.2-20210306/menu/Makefile.in 2021-03-11 12:00:59.002470754 +0100 +@@ -110,7 +110,7 @@ LINK = $(LIBTOOL_LINK) + LDFLAGS = @LDFLAGS@ @LD_MODEL@ @LIBS@ + + SHLIB_DIRS = -L../lib +-SHLIB_LIST = $(SHLIB_DIRS) -lncurses@USE_LIB_SUFFIX@ @SHLIB_LIST@ ++SHLIB_LIST = $(SHLIB_DIRS) -lncurses@USE_LIB_SUFFIX@ #@SHLIB_LIST@ + + RPATH_LIST = @RPATH_LIST@ + RESULTING_SYMS = @RESULTING_SYMS@ +diff -up ncurses-6.2-20210306/panel/Makefile.in.libs ncurses-6.2-20210306/panel/Makefile.in +--- ncurses-6.2-20210306/panel/Makefile.in.libs 2020-08-29 16:50:45.000000000 +0200 ++++ ncurses-6.2-20210306/panel/Makefile.in 2021-03-11 12:00:59.002470754 +0100 +@@ -112,7 +112,7 @@ LINK = $(LIBTOOL_LINK) + LDFLAGS = @LDFLAGS@ @LD_MODEL@ @LIBS@ + + SHLIB_DIRS = -L../lib +-SHLIB_LIST = $(SHLIB_DIRS) -lncurses@USE_LIB_SUFFIX@ @SHLIB_LIST@ ++SHLIB_LIST = $(SHLIB_DIRS) -lncurses@USE_LIB_SUFFIX@ #@SHLIB_LIST@ + + RPATH_LIST = @RPATH_LIST@ + RESULTING_SYMS = @RESULTING_SYMS@ diff --git a/ncurses-urxvt.patch b/ncurses-urxvt.patch new file mode 100644 index 0000000000000000000000000000000000000000..92f2169032898a9d92c1c505d2f4e557de309594 --- /dev/null +++ b/ncurses-urxvt.patch @@ -0,0 +1,185 @@ +diff -up ncurses-6.0-20150810/misc/terminfo.src.urxvt ncurses-6.0-20150810/misc/terminfo.src +--- ncurses-6.0-20150810/misc/terminfo.src.urxvt 2015-07-25 21:27:20.000000000 +0200 ++++ ncurses-6.0-20150810/misc/terminfo.src 2015-08-12 17:38:46.050362567 +0200 +@@ -5214,6 +5214,181 @@ rxvt-cygwin-native|rxvt terminal emulato + rxvt-16color|rxvt with 16 colors like aixterm, + ncv#32, use=ibm+16color, use=rxvt, + ++# rxvt-unicode ++# http://cvs.schmorp.de/rxvt-unicode/doc/etc/rxvt-unicode.terminfo?revision=1.34 ++# From: Thomas Dickey 04 Oct 1997 ++# Updated: Özgür Kesim 02 Nov 1997 ++# Updated: Marc Lehmann , 17 Feb 2005 ++# Updated: Marc Lehmann , 04 Nov 2008: change init/reset sequences ++# Updated: Marc Lehmann , 24 Nov 2014: implement cvvis as blinking cursor ++# Updated: Marc Lehmann , 13 Dec 2014: removed superfluous 0 from sgr ++# Updated: Robbie Harwood , 25 Oct 2019: restore deleted rxvt-unicode-256color ++rxvt-unicode|rxvt-unicode terminal (X Window System), ++ am, ++ bce, ++ eo, ++ km, ++ msgr, ++ xenl, ++ hs, ++ cols#80, ++ it#8, ++ lines#24, ++ acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~-A.B+C\,D0EhFiG, ++ bel=^G, ++ blink=\E[5m, ++ bold=\E[1m, ++ clear=\E[H\E[2J, ++ civis=\E[?25l, ++ cnorm=\E[?12l\E[?25h, ++ cvvis=\E[?12;25h, ++ cr=^M, ++ csr=\E[%i%p1%d;%p2%dr, ++ cub=\E[%p1%dD, ++ cub1=^H, ++ cud=\E[%p1%dB, ++ cud1=^J, ++ cuf=\E[%p1%dC, ++ cuf1=\E[C, ++ cup=\E[%i%p1%d;%p2%dH, ++ cuu=\E[%p1%dA, ++ cuu1=\E[A, ++ dch=\E[%p1%dP, ++ dch1=\E[P, ++ dl=\E[%p1%dM, ++ dl1=\E[M, ++ ed=\E[J, ++ el=\E[K, ++ el1=\E[1K, ++ flash=\E[?5h$<20/>\E[?5l, ++ home=\E[H, ++ hpa=\E[%i%p1%dG, ++ ht=^I, ++ hts=\EH, ++ ich=\E[%p1%d@, ++ ich1=\E[@, ++ il=\E[%p1%dL, ++ il1=\E[L, ++ ind=^J, ++ is1=\E[\041p, ++ is2=\E[r\E[m\E[2J\E[?7;25h\E[?1;3;4;5;6;9;66;1000;1001;1049l\E[4l, ++ kDC=\E[3$, ++ kIC=\E[2$, ++ kEND=\E[8$, ++ kHOM=\E[7$, ++ kLFT=\E[d, ++ kNXT=\E[6$, ++ kPRV=\E[5$, ++ kRIT=\E[c, ++ kbs=\177, ++ ka1=\EOw, ++ ka3=\EOy, ++ kb2=\EOu, ++ kc1=\EOq, ++ kc3=\EOs, ++ kcbt=\E[Z, ++ kcub1=\E[D, ++ kcud1=\E[B, ++ kcuf1=\E[C, ++ kcuu1=\E[A, ++ kdch1=\E[3~, ++ kel=\E[8\^, ++ kend=\E[8~, ++ kent=\EOM, ++ kf1=\E[11~, ++ kf10=\E[21~, ++ kf11=\E[23~, ++ kf12=\E[24~, ++ kf13=\E[25~, ++ kf14=\E[26~, ++ kf15=\E[28~, ++ kf16=\E[29~, ++ kf17=\E[31~, ++ kf18=\E[32~, ++ kf19=\E[33~, ++ kf2=\E[12~, ++ kf20=\E[34~, ++ kf3=\E[13~, ++ kf4=\E[14~, ++ kf5=\E[15~, ++ kf6=\E[17~, ++ kf7=\E[18~, ++ kf8=\E[19~, ++ kf9=\E[20~, ++ kfnd=\E[1~, ++ khome=\E[7~, ++ kich1=\E[2~, ++ kmous=\E[M, ++ knp=\E[6~, ++ kpp=\E[5~, ++ kslt=\E[4~, ++ rc=\E8, ++ rev=\E[7m, ++ ri=\EM, ++ rmso=\E[27m, ++ rmul=\E[24m, ++ rs1=\Ec, ++ rs2=\E[r\E[m\E[?7;25h\E[?1;3;4;5;6;9;66;1000;1001;1049l\E[4l, ++ sgr0=\E[m\E(B, ++ enacs=, ++ smacs=\E(0, ++ rmacs=\E(B, ++ smso=\E[7m, ++ smul=\E[4m, ++ tbc=\E[3g, ++ vpa=\E[%i%p1%dd, ++ colors#88, ++ pairs#7744, ++ btns#5, ++ lm#0, ++ ccc, ++ npc, ++ mc5i, ++ ncv#0, ++ mir, ++ xon, ++ bw, ++ ech=\E[%p1%dX, ++ mc0=\E[i, ++ mc4=\E[4i, ++ mc5=\E[5i, ++ sitm=\E[3m, ++ ritm=\E[23m, ++ smam=\E[?7h, ++ rmam=\E[?7l, ++ smir=\E[4h, ++ rmir=\E[4l, ++ smcup=\E[?1049h, ++ rmcup=\E[r\E[?1049l, ++ smkx=\E=, ++ rmkx=\E>, ++ indn=\E[%p1%dS, ++ rin=\E[%p1%dT, ++ sgr=\E[%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m%?%p9%t\E(0%e\E(B%;, ++ op=\E[39;49m, ++ setaf=\E[38;5;%p1%dm, ++ setab=\E[48;5;%p1%dm, ++ setf=%?%p1%{7}%>%t\E[38;5;%p1%dm%e\E[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m%;, ++ setb=%?%p1%{7}%>%t\E[48;5;%p1%dm%e\E[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m%;, ++ initc=\E]4;%p1%d;rgb\:%p2%{65535}%*%{1000}%/%4.4X/%p3%{65535}%*%{1000}%/%4.4X/%p4%{65535}%*%{1000}%/%4.4X\E\\, ++ sc=\E7, ++ s0ds=\E(B, ++ s1ds=\E(0, ++ s2ds=\E*B, ++ s3ds=\E+B, ++ u6=\E[%i%d;%dR, ++ u7=\E[6n, ++ u8=\E[?1;2c, ++ u9=\E[c, ++ tsl=\E]2;, ++ fsl=\007, ++ dsl=\E]2;\007, ++ ++rxvt-unicode-256color|rxvt-unicode terminal with 256 colors (X Window System), ++ colors#256, ++ pairs#32767, ++ use=rxvt-unicode, ++ + #### MRXVT + # mrxvt 0.5.4 + # diff --git a/ncurses.spec b/ncurses.spec index 877844105f2953e48da8f2c077643ecde19492ec..63d5cab471981e40fb355234a3137eca0a607bef 100644 --- a/ncurses.spec +++ b/ncurses.spec @@ -1,16 +1,23 @@ -%define anolis_release 3 +%define anolis_release 1 +%define ver 6.4 +%define patchdate 20221231 + Name: ncurses -Version: 6.3 +Version: %{ver}.%{patchdate} Release: %{anolis_release}%{?dist} Summary: Ncurses support utilities License: MIT URL: https://invisible-island.net/ncurses/ncurses.html -Source0: https://invisible-mirror.net/archives/ncurses/ncurses-%{version}.tar.gz +Source0: https://invisible-mirror.net/archives/ncurses/current/ncurses-%{ver}-%{patchdate}.tgz -Patch0: 0001-revert-GCC_PRINTF-and-GCC_SCANF-to-workaround-some-p.patch +Patch0: 0001-revert-GCC_PRINTF-and-GCC_SCANF-to-workaround-some-p.patch +Patch8: ncurses-config.patch +Patch9: ncurses-libs.patch +Patch11: ncurses-urxvt.patch +Patch12: ncurses-kbs.patch -BuildRequires: gcc gcc-c++ gpm-devel gnupg2 make pkgconfig +BuildRequires: gcc gcc-c++ gpm-devel gnupg2 make Requires: %{name}-libs = %{version}-%{release} %description @@ -89,7 +96,6 @@ the ncurses-base package. Summary: Development files for the ncurses library Requires: %{name}-libs = %{version}-%{release} Requires: %{name}-c++-libs = %{version}-%{release} -Requires: pkgconfig %description devel The header files and libraries for developing applications that use @@ -107,7 +113,7 @@ The ncurses-static package includes static libraries of the ncurses library. %prep -%autosetup -p1 +%autosetup -p1 -n %{name}-%{ver}-%{patchdate} %build common_options="\ @@ -216,12 +222,6 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/pkgconfig/*_g.pc xz NEWS -%ldconfig_scriptlets libs - -%ldconfig_scriptlets c++-libs - -%ldconfig_scriptlets compat-libs - %generate_compatibility_deps %files @@ -236,15 +236,44 @@ xz NEWS %files libs %dir %{abidir} -%exclude %{_libdir}/libncurses++*.so.6* -%{_libdir}/lib*.so.6* -%{abidir}/lib*.dump +%{_libdir}/libform.so.6 +%{_libdir}/libform.so.6.* +%{_libdir}/libformw.so.6 +%{_libdir}/libformw.so.6.* +%{_libdir}/libmenu.so.6 +%{_libdir}/libmenu.so.6.* +%{_libdir}/libmenuw.so.6 +%{_libdir}/libmenuw.so.6.* +%{_libdir}/libncurses.so.6 +%{_libdir}/libncurses.so.6.* +%{_libdir}/libncursesw.so.6 +%{_libdir}/libncursesw.so.6.* +%{_libdir}/libpanel.so.6 +%{_libdir}/libpanel.so.6.* +%{_libdir}/libpanelw.so.6 +%{_libdir}/libpanelw.so.6.* +%{_libdir}/libtic.so.6 +%{_libdir}/libtic.so.6.* +%{_libdir}/libtinfo.so.6 +%{_libdir}/libtinfo.so.6.* +%{abidir}/libform.dump +%{abidir}/libformw.dump +%{abidir}/libmenu.dump +%{abidir}/libmenuw.dump +%{abidir}/libncurses.dump +%{abidir}/libncursesw.dump +%{abidir}/libpanel.dump +%{abidir}/libpanelw.dump +%{abidir}/libtic.dump +%{abidir}/libtinfo.dump %files compat-libs %{_libdir}/lib*.so.5* %files c++-libs %{_libdir}/libncurses++*.so.6* +%{abidir}/libncurses++.dump +%{abidir}/libncurses++w.dump %files base -f terms.base %license COPYING @@ -277,6 +306,12 @@ xz NEWS %changelog +* Sun Jan 1 2023 Funda Wang - 6.4.20221231-1 +- New version 6.4 + +* Sat Dec 31 2022 Funda Wang - 6.3.20221224-1 +- Update patchlevel to 20221224 + * Tue Oct 18 2022 mgb01105731 - 6.3-3 - optimise spec file & add doc package