diff --git a/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/Manifest b/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/Manifest index 61cb703f5f..3f504d0580 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/Manifest +++ b/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/Manifest @@ -1 +1,2 @@ +DIST ncurses-6.2-20210619-patch.sh.bz2 836967 BLAKE2B f210bf25c33f11d67e54a6f416aae75f0a976880ea543408780fd3a8dc992ee8d9999bf15c925c79504be0f30ade4bbfaed763abedd2b2d6b35de65b353a6314 SHA512 b8392bf6c0b7570766ae31a043df311660201265dfe3e2e49425b1e2aa08c72030b5f5b6c7871532897596262c88a7192e3ff2adfdc618f1b9c13c22c373eeb3 DIST ncurses-6.2.tar.gz 3425862 BLAKE2B 6680cd7a369a4cb8234442a70869c283f0db6db9d7da1da2a7a5c519eb862a2c9b9411957d99f9ebb5089cad00b42e1ca6bc0784327461113df2eeaec695913c SHA512 4c1333dcc30e858e8a9525d4b9aefb60000cfc727bc4a1062bace06ffc4639ad9f6e54f6bdda0e3a0e5ea14de995f96b52b3327d9ec633608792c99a1e8d840d diff --git a/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/files/ncurses-5.9-gcc-5.patch b/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/files/ncurses-5.9-gcc-5.patch deleted file mode 100644 index 2448229b88..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/files/ncurses-5.9-gcc-5.patch +++ /dev/null @@ -1,46 +0,0 @@ -https://bugs.gentoo.org/545114 - -extracted from the upstream change (which had many unrelated commits in one) - -From 97bb4678dc03e753290b39bbff30ba2825df9517 Mon Sep 17 00:00:00 2001 -From: "Thomas E. Dickey" -Date: Sun, 7 Dec 2014 03:10:09 +0000 -Subject: [PATCH] ncurses 5.9 - patch 20141206 - -+ modify MKlib_gen.sh to work around change in development version of - gcc introduced here: - https://gcc.gnu.org/ml/gcc-patches/2014-06/msg02185.html - https://gcc.gnu.org/ml/gcc-patches/2014-07/msg00236.html - (reports by Marcus Shawcroft, Maohui Lei). - -diff --git a/ncurses/base/MKlib_gen.sh b/ncurses/base/MKlib_gen.sh -index d8cc3c9..b91398c 100755 ---- a/ncurses/base/MKlib_gen.sh -+++ b/ncurses/base/MKlib_gen.sh -@@ -474,11 +474,22 @@ sed -n -f $ED1 \ - -e 's/gen_$//' \ - -e 's/ / /g' >>$TMP - -+cat >$ED1 < $ED2 -+cat $ED2 >$TMP -+ - $preprocessor $TMP 2>/dev/null \ --| sed \ -- -e 's/ / /g' \ -- -e 's/^ //' \ -- -e 's/_Bool/NCURSES_BOOL/g' \ -+| sed -f $ED1 \ - | $AWK -f $AW2 \ - | sed -f $ED3 \ - | sed \ diff --git a/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/files/ncurses-6.2-no_user_ldflags_in_libs.patch b/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/files/ncurses-6.2-no_user_ldflags_in_libs.patch deleted file mode 100644 index 66345b51fe..0000000000 --- a/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/files/ncurses-6.2-no_user_ldflags_in_libs.patch +++ /dev/null @@ -1,40 +0,0 @@ -From be554be06475b36da2f69aabfd873ad55f7ef95c Mon Sep 17 00:00:00 2001 -From: Lars Wendler -Date: Thu, 13 Feb 2020 11:51:09 +0100 -Subject: [PATCH] Don't bleed user LDFLAGS into Libs - -Signed-off-by: Lars Wendler ---- - misc/gen-pkgconfig.in | 2 +- - misc/ncurses-config.in | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/misc/gen-pkgconfig.in b/misc/gen-pkgconfig.in -index 8f00b824..009d2156 100644 ---- a/misc/gen-pkgconfig.in -+++ b/misc/gen-pkgconfig.in -@@ -80,7 +80,7 @@ if [ "$includedir" != "/usr/include" ]; then - fi - - lib_flags= --for opt in -L$libdir @LDFLAGS@ @EXTRA_LDFLAGS@ @LIBS@ -+for opt in -L$libdir @LIBS@ - do - case $opt in - -l*) # LIBS is handled specially below -diff --git a/misc/ncurses-config.in b/misc/ncurses-config.in -index 7f8ba697..2f1915cd 100644 ---- a/misc/ncurses-config.in -+++ b/misc/ncurses-config.in -@@ -101,7 +101,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 @LDFLAGS@ @EXTRA_LDFLAGS@ $LIBS -+for opt in -L$libdir $LIBS - do - case $opt in - -specs*) # ignore linker specs-files which were used to build library --- -2.25.0 - diff --git a/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/files/ncurses-6.0-cppflags-cross.patch b/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/files/ncurses-6.2_p20210123-cppflags-cross.patch similarity index 79% rename from sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/files/ncurses-6.0-cppflags-cross.patch rename to sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/files/ncurses-6.2_p20210123-cppflags-cross.patch index decdc26779..1087bf5c9c 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/files/ncurses-6.0-cppflags-cross.patch +++ b/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/files/ncurses-6.2_p20210123-cppflags-cross.patch @@ -14,22 +14,22 @@ one; it should mirror what the first patch tries to achieve and works for me. --- a/configure +++ b/configure -@@ -2938,10 +2938,6 @@ - echo "$as_me:2938: checking if $CXX works" >&5 +@@ -3459,10 +3459,6 @@ + echo "$as_me:3459: checking if $CXX works" >&5 echo $ECHO_N "checking if $CXX works... $ECHO_C" >&6 - save_CPPFLAGS="$CPPFLAGS" - eval cf_includedir=${includedir} - CPPFLAGS="$CPPFLAGS -I${cf_includedir}" - - cat >conftest.$ac_ext <<_ACEOF - #line 2946 "configure" + cat >"conftest.$ac_ext" <<_ACEOF + #line 3467 "configure" #include "confdefs.h" -@@ -2978,7 +2974,6 @@ +@@ -3499,7 +3495,6 @@ cf_cxx_works=no fi - rm -f conftest.$ac_objext conftest.$ac_ext + rm -f "conftest.$ac_objext" "conftest.$ac_ext" - CPPFLAGS="$save_CPPFLAGS" - echo "$as_me:2983: result: $cf_cxx_works" >&5 + echo "$as_me:3504: result: $cf_cxx_works" >&5 echo "${ECHO_T}$cf_cxx_works" >&6 diff --git a/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/metadata.xml b/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/metadata.xml index 1030e9cebb..27fbeede9c 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/metadata.xml +++ b/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/metadata.xml @@ -1,20 +1,21 @@ - + - - base-system@gentoo.org - Gentoo Base System - - - Add bindings for the ADA programming language - - Build curses library (libncurses) sep from the low-level terminfo - library (libtinfo) -- usually needed only for binary packages -- but - it is binary compatible in either mode - - Enable test trace() support in ncurses calls - - - cpe:/a:gnu:ncurses - + + base-system@gentoo.org + Gentoo Base System + + + Add bindings for the ADA programming language + + Build curses library (libncurses) sep from the low-level terminfo + library (libtinfo) -- usually needed only for binary packages -- but + it is binary compatible in either mode + + Enable test trace() support in ncurses calls + + + https://invisible-island.net/ncurses/NEWS.html + cpe:/a:gnu:ncurses + diff --git a/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/ncurses-6.2-r1.ebuild b/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/ncurses-6.2_p20210619.ebuild similarity index 82% rename from sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/ncurses-6.2-r1.ebuild rename to sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/ncurses-6.2_p20210619.ebuild index 5ad1d57a45..0e5076cc2a 100644 --- a/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/ncurses-6.2-r1.ebuild +++ b/sdk_container/src/third_party/coreos-overlay/sys-libs/ncurses/ncurses-6.2_p20210619.ebuild @@ -3,7 +3,7 @@ EAPI=7 -inherit flag-o-matic toolchain-funcs multilib-minimal preserve-libs usr-ldscript +inherit toolchain-funcs multilib multilib-minimal preserve-libs usr-ldscript MY_PV="${PV:0:3}" MY_P="${PN}-${MY_PV}" @@ -14,13 +14,14 @@ SRC_URI="mirror://gnu/ncurses/${MY_P}.tar.gz" if [[ "${PV}" == *_p* ]] ; then SRC_URI+=" ftp://ftp.invisible-island.net/${PN}/${PV/_p*}/${P/_p/-}-patch.sh.bz2 https://invisible-mirror.net/archives/${PN}/${PV/_p*}/${P/_p/-}-patch.sh.bz2" + #SRC_URI+=" https://dev.gentoo.org/~polynomial-c/dist/${P}.patch.xz" fi LICENSE="MIT" # The subslot reflects the SONAME. SLOT="0/6" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -IUSE="ada +cxx debug doc gpm minimal profile static-libs symlink-usr test threads tinfo trace unicode" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="ada +cxx debug doc gpm minimal profile static-libs test tinfo trace" RESTRICT="!test? ( test )" DEPEND="gpm? ( sys-libs/gpm[${MULTILIB_USEDEP}] )" @@ -34,25 +35,18 @@ RDEPEND="${DEPEND} S="${WORKDIR}/${MY_P}" -MINIMAL_TERMINFO=( - ansi console dumb linux rxvt rxvt-256color rxvt-unicode rxvt-unicode-256color - screen screen-16color screen-256color sun vt{52,100,102,200,220} - xterm xterm-color xterm-256color xterm-xfree86 -) - PATCHES=( "${FILESDIR}/${PN}-5.7-nongnu.patch" "${FILESDIR}/${PN}-6.0-rxvt-unicode-9.15.patch" #192083 #383871 "${FILESDIR}/${PN}-6.0-pkg-config.patch" - "${FILESDIR}/${PN}-5.9-gcc-5.patch" #545114 "${FILESDIR}/${PN}-6.0-ticlib.patch" #557360 - "${FILESDIR}/${PN}-6.0-cppflags-cross.patch" #601426 - "${FILESDIR}/${PN}-6.2-no_user_ldflags_in_libs.patch" + "${FILESDIR}/${PN}-6.2_p20210123-cppflags-cross.patch" #601426 ) src_prepare() { if [[ "${PV}" == *_p* ]] ; then eapply "${WORKDIR}"/${P/_p/-}-patch.sh + #eapply "${WORKDIR}/${P}.patch" fi default } @@ -69,9 +63,9 @@ src_configure() { # checking configure flags. NCURSES_TARGETS=( ncurses - $(usex unicode 'ncursesw' '') - $(usex threads 'ncursest' '') - $(use unicode && usex threads 'ncursestw' '') + ncursesw + ncursest + ncursestw ) # When installing ncurses, we have to use a compatible version of tic. @@ -93,6 +87,7 @@ src_configure() { # We can't re-use the multilib BUILD_DIR because we run outside of it. BUILD_DIR="${WORKDIR}" \ + CC=${BUILD_CC} \ CHOST=${CBUILD} \ CFLAGS=${BUILD_CFLAGS} \ CXXFLAGS=${BUILD_CXXFLAGS} \ @@ -111,10 +106,6 @@ multilib_src_configure() { } do_configure() { - # Flatcar: Also allow writes to /dev/ptmx, which sometimes - # causes the sandbox to fail Jenkins builds. - addwrite /dev/ptmx - local target=$1 shift @@ -168,6 +159,7 @@ do_configure() { $(use_with trace) $(use_with tinfo termlib) --disable-stripping + --disable-pkg-ldflags ) if [[ ${target} == ncurses*w ]] ; then @@ -197,7 +189,7 @@ do_configure() { # Force bash until upstream rebuilds the configure script with a newer # version of autotools. #545532 - CONFIG_SHELL=${EPREFIX}/bin/bash \ + #CONFIG_SHELL=${EPREFIX}/bin/bash \ ECONF_SOURCE="${S}" \ econf "${conf[@]}" "$@" } @@ -258,8 +250,7 @@ multilib_src_install() { if multilib_is_native_abi ; then gen_usr_ldscript -a \ "${NCURSES_TARGETS[@]}" \ - $(use tinfo && usex unicode 'tinfow' '') \ - $(usev tinfo) + $(usex tinfo 'tinfow tinfo' '') fi if ! tc-is-static-only ; then # Provide a link for -lcurses. @@ -280,13 +271,24 @@ multilib_src_install() { } multilib_src_install_all() { - # Flatcar: Add a symlink-usr USE flag for keeping a minimal - # set of terminfo files in /usr/share/terminfo. - if ! use symlink-usr ; then +# if ! use berkdb ; then # We need the basic terminfo files in /etc for embedded/recovery. #37026 einfo "Installing basic terminfo files in /etc..." + local terms=( + # Dumb/simple values that show up when using the in-kernel VT. + ansi console dumb linux + vt{52,100,102,200,220} + # [u]rxvt users used to be pretty common. Probably should drop this + # since upstream is dead and people are moving away from it. + rxvt{,-unicode}{,-256color} + # xterm users are common, as is terminals re-using/spoofing it. + xterm xterm-{,256}color + # screen is common (and reused by tmux). + screen{,-256color} + screen.xterm-256color + ) local x - for x in "${MINIMAL_TERMINFO[@]}"; do + for x in "${terms[@]}"; do local termfile=$(find "${ED}"/usr/share/terminfo/ -name "${x}" 2>/dev/null) local basedir=$(basename "$(dirname "${termfile}")") @@ -297,19 +299,13 @@ multilib_src_install_all() { "/usr/share/terminfo/${basedir}/${x}" fi done +# fi - echo "CONFIG_PROTECT_MASK=\"/etc/terminfo\"" | newenvd - 50ncurses + echo "CONFIG_PROTECT_MASK=\"/etc/terminfo\"" | newenvd - 50ncurses - use minimal && rm -r "${ED}"/usr/share/terminfo* - # Because ncurses5-config --terminfo returns the directory we keep it - keepdir /usr/share/terminfo #245374 - elif use minimal; then - # prune all files and symlinks not listed in MINIMAL_TERMINFO - find "${D}"/usr/share/terminfo ! -type d \ - ${MINIMAL_TERMINFO[@]/#/! -name } \ - -delete || die - find "${D}"/usr/share/terminfo -type d -empty -delete || die - fi + use minimal && rm -r "${ED}"/usr/share/terminfo* + # Because ncurses5-config --terminfo returns the directory we keep it + keepdir /usr/share/terminfo #245374 cd "${S}" || die dodoc ANNOUNCE MANIFEST NEWS README* TO-DO doc/*.doc @@ -321,10 +317,10 @@ multilib_src_install_all() { pkg_preinst() { preserve_old_lib /$(get_libdir)/libncurses.so.5 - use unicode && preserve_old_lib /$(get_libdir)/libncursesw.so.5 + preserve_old_lib /$(get_libdir)/libncursesw.so.5 } pkg_postinst() { preserve_old_lib_notify /$(get_libdir)/libncurses.so.5 - use unicode && preserve_old_lib_notify /$(get_libdir)/libncursesw.so.5 + preserve_old_lib_notify /$(get_libdir)/libncursesw.so.5 }