From 83c1b6075da26cb2fcab89c007508fc9ce564872abdc073b016775d5cbcece9c Mon Sep 17 00:00:00 2001 From: "Dr. Werner Fink" Date: Mon, 16 Dec 2019 10:34:37 +0000 Subject: [PATCH] Avoid private requirement due (lib)tinfo is used for both, normal and wide OBS-URL: https://build.opensuse.org/package/show/Base:System/ncurses?expand=0&rev=458 --- handle.linux | 28 ++++++++++++++-------------- ncurses-6.1-patches.tar.bz2 | 4 ++-- ncurses.changes | 14 ++++++++++++++ ncurses.spec | 31 +++++++------------------------ 4 files changed, 37 insertions(+), 40 deletions(-) diff --git a/handle.linux b/handle.linux index 6a7db13..6e91689 100644 --- a/handle.linux +++ b/handle.linux @@ -17,10 +17,10 @@ ed= declare -i line=0 if test -r run_cmd.sh ; then - function tc { sh run_cmd.sh $BUILD_TIC -U -C -r ${1+"$@"}; } + function tc { sh run_cmd.sh $BUILD_TIC -0 -U -C -r ${1+"$@"}; } function ic { sh run_cmd.sh $BUILD_INFOCMP -A $TERMINFO ${1+"$@"}; } else - function tc { $BUILD_TIC -U -C -r ${1+"$@"}; } + function tc { $BUILD_TIC -0 -U -C -r ${1+"$@"}; } function ic { $BUILD_INFOCMP -A $TERMINFO ${1+"$@"}; } fi @@ -45,35 +45,35 @@ for l in $(grep '^linux' $TERMCAP); do entry="$(tc $tmp2 | grep -v '^#')" - new=$(echo "$entry" | sed -e '/:a[el]=.*/a\ - :ac=' | sed -e "s/\t:ac=/${acsc//\\/\\\\}\\\\/") + new=$(echo "$entry" | sed -e '\:a[el]=.*a\ + :ac=' | sed -e "s\t:ac=${acsc//\\/\\\\}\\\\") new=$(echo "$new" | sed -e '/:a[el]=.*/i\ - :S2=' | sed -e "s/\t:S2=/${mpch//\\/\\\\}\\\\/") - new=$(echo "$new" | sed -e '/:s.=.*/i\ - :\.\.sa=' | sed -e "s/\t:\.\.sa=/${sgr//\\/\\\\}\\\\/") + :S2=' | sed -e "s\t:S2=${mpch//\\/\\\\}\\\\") + new=$(echo "$new" | sed -e '\:s.=.*i\ + :\.\.sa=' | sed -e "s\t:\.\.sa=${sgr//\\/\\\\}\\\\") if test "${#new}" -gt 1024 ; then - new=$(echo "$entry" | sed -e '/\t:a[el]=.*/a\ - :ac=' | sed -e "s/\t:ac=/${acsc//\\/\\\\}\\\\/") + new=$(echo "$entry" | sed -e '\\t:a[el]=.*a\ + :ac=' | sed -e "s\t:ac=${acsc//\\/\\\\}\\\\") new=$(echo "$new" | sed -e '/\t:a[el]=.*/i\ - :S2=' | sed -e "s/\t:S2=/${mpch//\\/\\\\}\\\\/") + :S2=' | sed -e "s\t:S2=${mpch//\\/\\\\}\\\\") fi if test "${#new}" -gt 1024 ; then - new=$(echo "$entry" | sed -e '/\t:a[el]=.*/i\ - :S2=' | sed -e "s/\t:S2=/${mpch//\\/\\\\}\\\\/") + new=$(echo "$entry" | sed -e '\\t:a[el]=.*i\ + :S2=' | sed -e "s\t:S2=${mpch//\\/\\\\}\\\\") fi if test "${#new}" -gt 1024 ; then new="$entry" fi - line=$(grep -n "${l//\\/\\\\}" ${TERMCAP##*/}.new| sed 's/:.*//') + line=$(grep -n "${l//\\/\\\\}" ${TERMCAP##*/}.new| sed 's:.*') : $((line--)) echo "$entry" > $tmp1 echo "$new" > $tmp2 - ed=$(diff -e $tmp1 $tmp2| sed "s/^\([0-9]\+a\)/$line\n+\1/") + ed=$(diff -e $tmp1 $tmp2| sed "s^\([0-9]\+a\)$line\n+\1") ed ${TERMCAP##*/}.new &> /dev/null <<-EOF ${ed} diff --git a/ncurses-6.1-patches.tar.bz2 b/ncurses-6.1-patches.tar.bz2 index 12b73b5..dde0ac1 100644 --- a/ncurses-6.1-patches.tar.bz2 +++ b/ncurses-6.1-patches.tar.bz2 @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a4c755271dae9f6e710be26ab7ed78a7d60bcf2d6b2e4d627d83fc7712a61ade -size 1942122 +oid sha256:bb4b81383f1f2882930cba31b77e17f42b31c535f3fe3608bb53e07badf6154e +size 1949169 diff --git a/ncurses.changes b/ncurses.changes index 79b7fae..052cf5d 100644 --- a/ncurses.changes +++ b/ncurses.changes @@ -1,3 +1,17 @@ +------------------------------------------------------------------- +Mon Dec 16 10:15:37 UTC 2019 - Dr. Werner Fink + +- Also remove private requirements as (lib)tinfo are binary + compatible with normal and wide version of (lib)ncurses + +------------------------------------------------------------------- +Mon Dec 16 09:09:31 UTC 2019 - Dr. Werner Fink + +- Add ncurses patch 20191214 + + add exit_curses() and exit_terminfo() to replace internal symbols for + leak-checking. +- Let helper script handle.linux call sed command smart + ------------------------------------------------------------------- Thu Dec 12 06:37:06 UTC 2019 - Dr. Werner Fink diff --git a/ncurses.spec b/ncurses.spec index 82781fc..9375206 100644 --- a/ncurses.spec +++ b/ncurses.spec @@ -602,13 +602,10 @@ mv tack-* tack rm -vf %{root}%{_libdir}/pkgconfig/tic.pc rm -vf %{root}%{_libdir}/pkgconfig/tinfo.pc mv -vf %{root}%{_libdir}/pkgconfig/*.pc pc/ - sed -ri 's@^(Requires.private: ).*@\1panelw, menuw, formw, ncursesw, tinfo@' \ - pc/ncurses++w.pc - sed -ri 's@^(Requires.private: ).*@\1ncursesw, tinfo@' pc/{form,menu,panel}w.pc - sed -ri 's@^(Libs.private: .*)@\1 -lncursesw -ltinfo -ldl@' pc/{form,menu,panel}w.pc - + sed -ri 's@^(Requires.private:).*@\1@' pc/*.pc sh %{S:6} --cflags "$(pkg-config --cflags ncursesw)" --libs "$(pkg-config --libs ncursesw)" \ %{root}%{_bindir}/ncursesw6-config + # # Some tests # @@ -695,14 +692,9 @@ mv tack-* tack sed -ri 's@^(libdir=).*@\1%{_libdir}/ncurses5@' "$pc" sed -ri 's@^(Libs: )(.*)@\1-L${libdir}\2@' "$pc" mv -f $pc pc/${base}5.pc + sed -ri 's@^(Cflags:.*)@\1-I%{_incdir}/ncurses5 @' pc/${base}5.pc + sed -ri 's@^(Requires.private:).*@\1@' pc/${base}5.pc done - sed -ri 's@^(Requires.private: ).*@\1panel5, menu5, form5, ncurses5, tinfo5@' \ - pc/ncurses++5.pc - sed -ri 's@^(Requires.private: ).*@\1ncurses5, tinfo5@' pc/{form,menu,panel}5.pc - sed -ri 's@^(Libs.private: .*)@\1 -lncurses -ltinfo -ldl@' pc/{form,menu,panel}5.pc - sed -ri 's@^(Requires.private: ).*@\1tinfo5@' pc/tic5.pc - sed -ri 's@^(Libs.private: .*)@\1 -ltinfo@' pc/tic5.pc - sh %{S:6} --cflags "$(pkg-config --cflags ncurses5)" --libs "$(pkg-config --libs ncurses5)" \ %{root}%{_bindir}/ncurses5-config @@ -752,13 +744,7 @@ mv tack-* tack sh ../edit_man.sh normal installing %{root}%{_mandir} . ncurses6-config.1 popd mv -f %{root}%{_libdir}/pkgconfig/*.pc pc/ - sed -ri 's@^(Requires.private: ).*@\1panel, menu, form, ncurses, tinfo@' \ - pc/ncurses++.pc - sed -ri 's@^(Requires.private: ).*@\1ncurses, tinfo@' pc/{form,menu,panel}.pc - sed -ri 's@^(Libs.private: .*)@\1 -lncurses -ltinfo -ldl@' pc/{form,menu,panel}.pc - sed -ri 's@^(Requires.private: ).*@\1tinfo@' pc/tic.pc - sed -ri 's@^(Libs.private: .*)@\1 -ltinfo@' pc/tic.pc - + sed -ri 's@^(Requires.private:).*@\1@' pc/*.pc sh %{S:6} --cflags "$(pkg-config --cflags ncurses)" --libs "$(pkg-config --libs ncurses)" \ %{root}%{_bindir}/ncurses6-config # @@ -843,12 +829,9 @@ mv tack-* tack sed -ri 's@^(libdir=).*@\1%{_libdir}/ncurses5@' "$pc" sed -ri 's@^(Libs: )(.*)@\1-L${libdir}\2@' "$pc" mv -f $pc pc/${base}5.pc + sed -ri 's@^(Cflags:.*)@\1-I%{_incdir}/ncurses5 @' pc/${base}5.pc + sed -ri 's@^(Requires.private:).*@\1@' pc/${base}5.pc done - sed -ri 's@^(Requires.private: ).*@\1panelw5, menuw5, formw5, ncursesw5, tinfo5@' \ - pc/ncurses++w5.pc - sed -ri 's@^(Requires.private: ).*@\1ncursesw5, tinfo5@' pc/{form,menu,panel}w5.pc - sed -ri 's@^(Libs.private: .*)@\1 -lncursesw -ltinfo -ldl@' pc/{form,menu,panel}w5.pc - sh %{S:6} --cflags "$(pkg-config --cflags ncursesw5)" --libs "$(pkg-config --libs ncursesw5)" \ %{root}%{_bindir}/ncursesw5-config