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
This commit is contained in:
Dr. Werner Fink 2019-12-16 10:34:37 +00:00 committed by Git OBS Bridge
parent e63774fa2e
commit 83c1b6075d
4 changed files with 37 additions and 40 deletions

View File

@ -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}

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a4c755271dae9f6e710be26ab7ed78a7d60bcf2d6b2e4d627d83fc7712a61ade
size 1942122
oid sha256:bb4b81383f1f2882930cba31b77e17f42b31c535f3fe3608bb53e07badf6154e
size 1949169

View File

@ -1,3 +1,17 @@
-------------------------------------------------------------------
Mon Dec 16 10:15:37 UTC 2019 - Dr. Werner Fink <werner@suse.de>
- 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 <werner@suse.de>
- 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 <werner@suse.de>

View File

@ -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