From 5fe9abe51a3dd3974877bb835ddaae18e55f3030 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 8 Sep 2025 07:11:14 +0000 Subject: [PATCH] sys-libs/readline: Sync with Gentoo It's from Gentoo commit 77d3f3e14082489491fc6f14565de35d0355dbce. Signed-off-by: Flatcar Buildbot --- .../files/readline-8.3-event_hook.patch | 35 --- .../readline/readline-8.2_p13-r1.ebuild | 2 +- .../sys-libs/readline/readline-8.3-r1.ebuild | 258 ----------------- .../sys-libs/readline/readline-8.3-r2.ebuild | 259 ------------------ .../sys-libs/readline/readline-8.3.ebuild | 257 ----------------- 5 files changed, 1 insertion(+), 810 deletions(-) delete mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/readline/files/readline-8.3-event_hook.patch delete mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3-r1.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3-r2.ebuild delete mode 100644 sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/readline/files/readline-8.3-event_hook.patch b/sdk_container/src/third_party/portage-stable/sys-libs/readline/files/readline-8.3-event_hook.patch deleted file mode 100644 index dbf03ebe86..0000000000 --- a/sdk_container/src/third_party/portage-stable/sys-libs/readline/files/readline-8.3-event_hook.patch +++ /dev/null @@ -1,35 +0,0 @@ -https://lists.gnu.org/archive/html/bug-readline/2025-07/msg00012.html - -*** a/input.c Fri May 2 09:29:05 2025 ---- b/input.c Tue Jul 8 15:37:13 2025 -*************** -*** 262,266 **** - tty = fileno (rl_instream); - -! /* Move this up here to give it first shot, but it can't set chars_avail */ - /* XXX - need rl_chars_available_hook? */ - if (rl_input_available_hook) ---- 262,267 ---- - tty = fileno (rl_instream); - -! /* Move this up here to give it first shot, but it can't set chars_avail, -! so we assume a single character is available. */ - /* XXX - need rl_chars_available_hook? */ - if (rl_input_available_hook) -*************** -*** 269,272 **** ---- 270,275 ---- - if (result == 0) - result = -1; -+ else -+ chars_avail = 1; - } - -*************** -*** 286,289 **** ---- 289,293 ---- - if (result <= 0) - return 0; /* Nothing to read. */ -+ result = -1; /* there is something, so check how many chars below */ - } - #endif diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.2_p13-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.2_p13-r1.ebuild index c11aa2cc41..b68d4a7698 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.2_p13-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.2_p13-r1.ebuild @@ -78,7 +78,7 @@ fi LICENSE="GPL-3+" SLOT="0/8" # subslot matches SONAME major if is_release ; then - KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi IUSE="static-libs +unicode utils" diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3-r1.ebuild deleted file mode 100644 index 798d3db01d..0000000000 --- a/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3-r1.ebuild +++ /dev/null @@ -1,258 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# There's no standard way of versioning the point releases upstream -# make anyway, so while this was added for RC versions, it's fine -# in general. -QA_PKGCONFIG_VERSION=$(ver_cut 1-2) -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chetramey.asc -inherit flag-o-matic multilib multilib-minimal preserve-libs toolchain-funcs verify-sig - -# Official patches -# See ftp://ftp.cwru.edu/pub/bash/readline-8.1-patches/ -PLEVEL="${PV##*_p}" -MY_PV="${PV/_p*}" -MY_PV="${MY_PV/_/-}" -MY_P="${PN}-${MY_PV}" -MY_PATCHES=() - -# Determine the patchlevel. -case ${PV} in - 9999|*_alpha*|*_beta*|*_rc*) - # Set a negative patchlevel to indicate that it's a pre-release. - PLEVEL=-1 - ;; - *_p*) - PLEVEL=${PV##*_p} - ;; - *) - PLEVEL=0 -esac - -DESCRIPTION="Another cute console display library" -HOMEPAGE="https://tiswww.case.edu/php/chet/readline/rltop.html https://git.savannah.gnu.org/cgit/readline.git" - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://git.savannah.gnu.org/git/readline.git" - EGIT_BRANCH=devel - inherit git-r3 -elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then - # It can be useful to have snapshots in the pre-release period once - # the first alpha is out, as various bugs get reported and fixed from - # the alpha, and the next pre-release is usually quite far away. - # - # i.e. if it's worth packaging the alpha, it's worth packaging a followup. - READLINE_COMMIT="7cf2d923617659d216db3210f6247740f7dde1d8" - SRC_URI="https://git.savannah.gnu.org/cgit/readline.git/snapshot/readline-${READLINE_COMMIT}.tar.gz -> ${P}-${READLINE_COMMIT}.tar.gz" - S=${WORKDIR}/${PN}-${READLINE_COMMIT} -else - SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz" - SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig )" - S="${WORKDIR}/${MY_P}" - - if [[ ${PLEVEL} -gt 0 ]] ; then - # bash-5.1 -> bash51 - my_p=${PN}$(ver_rs 1-2 '' $(ver_cut 1-2)) - - patch_url= - my_patch_index= - - upstream_url_base="mirror://gnu/readline" - - for ((my_patch_index=1; my_patch_index <= ${PLEVEL} ; my_patch_index++)) ; do - printf -v mangled_patch_ver ${my_p}-%03d ${my_patch_index} - patch_url="${upstream_url_base}/${MY_P}-patches/${mangled_patch_ver}" - - SRC_URI+=" ${patch_url}" - SRC_URI+=" verify-sig? ( ${patch_url}.sig )" - - MY_PATCHES+=( "${DISTDIR}"/${mangled_patch_ver} ) - done - - unset my_p patch_url my_patch_index upstream_url_base - fi -fi - -LICENSE="GPL-3+" -SLOT="0/8" # subslot matches SONAME major -if (( PLEVEL >= 0 )); then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -fi -IUSE="static-libs +unicode utils" - -RDEPEND=">=sys-libs/ncurses-5.9-r3:=[static-libs?,unicode(+)?,${MULTILIB_USEDEP}]" -DEPEND="${RDEPEND}" -BDEPEND=" - virtual/pkgconfig - verify-sig? ( sec-keys/openpgp-keys-chetramey ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-5.0-no_rpath.patch - "${FILESDIR}"/${PN}-7.0-headers.patch - "${FILESDIR}"/${PN}-8.0-headers.patch - "${FILESDIR}"/${PN}-8.3-iwd-crash.patch -) - -src_unpack() { - local patch - - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then - default - else - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig} - - for patch in "${MY_PATCHES[@]}"; do - verify-sig_verify_detached "${patch}"{,.sig} - done - fi - - unpack "${MY_P}.tar.gz" - - if [[ ${GENTOO_PATCH_VER} ]]; then - unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz" - fi - fi -} - -src_prepare() { - (( PLEVEL > 0 )) && eapply -p0 "${MY_PATCHES[@]}" - - default - - #(( PLEVEL < 0 )) && eautoreconf - - if use prefix && [[ ! -x "${BROOT}"/usr/bin/pkg-config ]] ; then - # If we're bootstrapping, make a guess. We don't have pkg-config - # around yet. bug #818103. - # Incorrectly populating this leads to underlinked libreadline. - local ncurses_libs - local ncurses_libs_suffix=$(usex unicode w '') - - ncurses_libs="-lncurses${ncurses_libs_suffix}" - - if has_version "sys-libs/ncurses[tinfo(+)]" ; then - ncurses_libs+=" -ltinfo${ncurses_libs_suffix}" - fi - else - # Force ncurses linking, bug #71420. - # Use pkg-config to get the right values, bug #457558. - local ncurses_libs=$($(tc-getPKG_CONFIG) ncurses$(usex unicode w '') --libs) - fi - - sed -i \ - -e "/^SHLIB_LIBS=/s:=.*:='${ncurses_libs}':" \ - support/shobj-conf || die - sed -i \ - -e "/[[:space:]]*LIBS=.-lncurses/s:-lncurses:${ncurses_libs}:" \ - examples/rlfe/configure || die - - # Fix building under Gentoo/FreeBSD; upstream FreeBSD deprecated - # objformat for years, so we don't want to rely on that. - sed -i -e '/objformat/s:if .*; then:if true; then:' support/shobj-conf || die - - # For local readline headers - ln -s ../.. examples/rlfe/readline || die -} - -src_configure() { - # Fix implicit decls with widechar funcs - append-cppflags -D_GNU_SOURCE - # https://lists.gnu.org/archive/html/bug-readline/2010-07/msg00013.html - append-cppflags -Dxrealloc=_rl_realloc -Dxmalloc=_rl_malloc -Dxfree=_rl_free - - # Make sure configure picks a better ar than `ar`, bug #484866 - export ac_cv_prog_AR="$(tc-getAR)" - - # Force the test since we used sed above to force it. - export bash_cv_termcap_lib=ncurses - - # Control cross-compiling cases when we know the right answer. - # In cases where the C library doesn't support wide characters, readline - # itself won't work correctly, so forcing the answer below should be OK. - if tc-is-cross-compiler ; then - export bash_cv_func_sigsetjmp="present" - export bash_cv_func_ctype_nonascii="yes" - # bug #503312 - export bash_cv_wcwidth_broken="no" - fi - - # This is for rlfe, but we need to make sure LDFLAGS doesn't change - # so we can re-use the config cache file between the two. - append-ldflags -L. - - multilib-minimal_src_configure -} - -multilib_src_configure() { - local myeconfargs=( - --cache-file="${BUILD_DIR}"/config.cache - --with-curses - $(use_enable static-libs static) - ) - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" - - if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then - # Code is full of AC_TRY_RUN() - mkdir -p examples/rlfe || die - cd examples/rlfe || die - - ECONF_SOURCE="${S}"/examples/rlfe econf --cache-file="${BUILD_DIR}"/config.cache - fi -} - -multilib_src_compile() { - emake - - if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then - # Code is full of AC_TRY_RUN() - cd examples/rlfe || die - local l - for l in readline history ; do - ln -s ../../shlib/lib${l}$(get_libname)* lib${l}$(get_libname) || die - ln -s ../../lib${l}.a lib${l}.a || die - done - emake - fi -} - -multilib_src_install() { - default - - if multilib_is_native_abi ; then - if use utils && ! tc-is-cross-compiler; then - dobin examples/rlfe/rlfe - fi - fi -} - -multilib_src_install_all() { - HTML_DOCS="doc/history.html doc/readline.html doc/rluserman.html" einstalldocs - - dodoc USAGE - docinto ps - dodoc doc/*.ps -} -pkg_preinst() { - # bug #29865 - # Reappeared in bug #595324 with paludis so keeping this for now... - preserve_old_lib \ - /$(get_libdir)/lib{history,readline}$(get_libname 4) \ - /$(get_libdir)/lib{history,readline}$(get_libname 5) \ - /$(get_libdir)/lib{history,readline}$(get_libname 6) \ - /$(get_libdir)/lib{history,readline}$(get_libname 7) -} - -pkg_postinst() { - preserve_old_lib_notify \ - /$(get_libdir)/lib{history,readline}$(get_libname 4) \ - /$(get_libdir)/lib{history,readline}$(get_libname 5) \ - /$(get_libdir)/lib{history,readline}$(get_libname 6) \ - /$(get_libdir)/lib{history,readline}$(get_libname 7) -} diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3-r2.ebuild deleted file mode 100644 index 4f0a849e33..0000000000 --- a/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3-r2.ebuild +++ /dev/null @@ -1,259 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# There's no standard way of versioning the point releases upstream -# make anyway, so while this was added for RC versions, it's fine -# in general. -QA_PKGCONFIG_VERSION=$(ver_cut 1-2) -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chetramey.asc -inherit flag-o-matic multilib multilib-minimal preserve-libs toolchain-funcs verify-sig - -# Official patches -# See ftp://ftp.cwru.edu/pub/bash/readline-8.1-patches/ -PLEVEL="${PV##*_p}" -MY_PV="${PV/_p*}" -MY_PV="${MY_PV/_/-}" -MY_P="${PN}-${MY_PV}" -MY_PATCHES=() - -# Determine the patchlevel. -case ${PV} in - 9999|*_alpha*|*_beta*|*_rc*) - # Set a negative patchlevel to indicate that it's a pre-release. - PLEVEL=-1 - ;; - *_p*) - PLEVEL=${PV##*_p} - ;; - *) - PLEVEL=0 -esac - -DESCRIPTION="Another cute console display library" -HOMEPAGE="https://tiswww.case.edu/php/chet/readline/rltop.html https://git.savannah.gnu.org/cgit/readline.git" - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://git.savannah.gnu.org/git/readline.git" - EGIT_BRANCH=devel - inherit git-r3 -elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then - # It can be useful to have snapshots in the pre-release period once - # the first alpha is out, as various bugs get reported and fixed from - # the alpha, and the next pre-release is usually quite far away. - # - # i.e. if it's worth packaging the alpha, it's worth packaging a followup. - READLINE_COMMIT="7cf2d923617659d216db3210f6247740f7dde1d8" - SRC_URI="https://git.savannah.gnu.org/cgit/readline.git/snapshot/readline-${READLINE_COMMIT}.tar.gz -> ${P}-${READLINE_COMMIT}.tar.gz" - S=${WORKDIR}/${PN}-${READLINE_COMMIT} -else - SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz" - SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig )" - S="${WORKDIR}/${MY_P}" - - if [[ ${PLEVEL} -gt 0 ]] ; then - # bash-5.1 -> bash51 - my_p=${PN}$(ver_rs 1-2 '' $(ver_cut 1-2)) - - patch_url= - my_patch_index= - - upstream_url_base="mirror://gnu/readline" - - for ((my_patch_index=1; my_patch_index <= ${PLEVEL} ; my_patch_index++)) ; do - printf -v mangled_patch_ver ${my_p}-%03d ${my_patch_index} - patch_url="${upstream_url_base}/${MY_P}-patches/${mangled_patch_ver}" - - SRC_URI+=" ${patch_url}" - SRC_URI+=" verify-sig? ( ${patch_url}.sig )" - - MY_PATCHES+=( "${DISTDIR}"/${mangled_patch_ver} ) - done - - unset my_p patch_url my_patch_index upstream_url_base - fi -fi - -LICENSE="GPL-3+" -SLOT="0/8" # subslot matches SONAME major -if (( PLEVEL >= 0 )); then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -fi -IUSE="static-libs +unicode utils" - -RDEPEND=">=sys-libs/ncurses-5.9-r3:=[static-libs?,unicode(+)?,${MULTILIB_USEDEP}]" -DEPEND="${RDEPEND}" -BDEPEND=" - virtual/pkgconfig - verify-sig? ( sec-keys/openpgp-keys-chetramey ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-5.0-no_rpath.patch - "${FILESDIR}"/${PN}-7.0-headers.patch - "${FILESDIR}"/${PN}-8.0-headers.patch - "${FILESDIR}"/${PN}-8.3-iwd-crash.patch - "${FILESDIR}"/${PN}-8.3-event_hook.patch -) - -src_unpack() { - local patch - - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then - default - else - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig} - - for patch in "${MY_PATCHES[@]}"; do - verify-sig_verify_detached "${patch}"{,.sig} - done - fi - - unpack "${MY_P}.tar.gz" - - if [[ ${GENTOO_PATCH_VER} ]]; then - unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz" - fi - fi -} - -src_prepare() { - (( PLEVEL > 0 )) && eapply -p0 "${MY_PATCHES[@]}" - - default - - #(( PLEVEL < 0 )) && eautoreconf - - if use prefix && [[ ! -x "${BROOT}"/usr/bin/pkg-config ]] ; then - # If we're bootstrapping, make a guess. We don't have pkg-config - # around yet. bug #818103. - # Incorrectly populating this leads to underlinked libreadline. - local ncurses_libs - local ncurses_libs_suffix=$(usex unicode w '') - - ncurses_libs="-lncurses${ncurses_libs_suffix}" - - if has_version "sys-libs/ncurses[tinfo(+)]" ; then - ncurses_libs+=" -ltinfo${ncurses_libs_suffix}" - fi - else - # Force ncurses linking, bug #71420. - # Use pkg-config to get the right values, bug #457558. - local ncurses_libs=$($(tc-getPKG_CONFIG) ncurses$(usex unicode w '') --libs) - fi - - sed -i \ - -e "/^SHLIB_LIBS=/s:=.*:='${ncurses_libs}':" \ - support/shobj-conf || die - sed -i \ - -e "/[[:space:]]*LIBS=.-lncurses/s:-lncurses:${ncurses_libs}:" \ - examples/rlfe/configure || die - - # Fix building under Gentoo/FreeBSD; upstream FreeBSD deprecated - # objformat for years, so we don't want to rely on that. - sed -i -e '/objformat/s:if .*; then:if true; then:' support/shobj-conf || die - - # For local readline headers - ln -s ../.. examples/rlfe/readline || die -} - -src_configure() { - # Fix implicit decls with widechar funcs - append-cppflags -D_GNU_SOURCE - # https://lists.gnu.org/archive/html/bug-readline/2010-07/msg00013.html - append-cppflags -Dxrealloc=_rl_realloc -Dxmalloc=_rl_malloc -Dxfree=_rl_free - - # Make sure configure picks a better ar than `ar`, bug #484866 - export ac_cv_prog_AR="$(tc-getAR)" - - # Force the test since we used sed above to force it. - export bash_cv_termcap_lib=ncurses - - # Control cross-compiling cases when we know the right answer. - # In cases where the C library doesn't support wide characters, readline - # itself won't work correctly, so forcing the answer below should be OK. - if tc-is-cross-compiler ; then - export bash_cv_func_sigsetjmp="present" - export bash_cv_func_ctype_nonascii="yes" - # bug #503312 - export bash_cv_wcwidth_broken="no" - fi - - # This is for rlfe, but we need to make sure LDFLAGS doesn't change - # so we can re-use the config cache file between the two. - append-ldflags -L. - - multilib-minimal_src_configure -} - -multilib_src_configure() { - local myeconfargs=( - --cache-file="${BUILD_DIR}"/config.cache - --with-curses - $(use_enable static-libs static) - ) - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" - - if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then - # Code is full of AC_TRY_RUN() - mkdir -p examples/rlfe || die - cd examples/rlfe || die - - ECONF_SOURCE="${S}"/examples/rlfe econf --cache-file="${BUILD_DIR}"/config.cache - fi -} - -multilib_src_compile() { - emake - - if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then - # Code is full of AC_TRY_RUN() - cd examples/rlfe || die - local l - for l in readline history ; do - ln -s ../../shlib/lib${l}$(get_libname)* lib${l}$(get_libname) || die - ln -s ../../lib${l}.a lib${l}.a || die - done - emake - fi -} - -multilib_src_install() { - default - - if multilib_is_native_abi ; then - if use utils && ! tc-is-cross-compiler; then - dobin examples/rlfe/rlfe - fi - fi -} - -multilib_src_install_all() { - HTML_DOCS="doc/history.html doc/readline.html doc/rluserman.html" einstalldocs - - dodoc USAGE - docinto ps - dodoc doc/*.ps -} -pkg_preinst() { - # bug #29865 - # Reappeared in bug #595324 with paludis so keeping this for now... - preserve_old_lib \ - /$(get_libdir)/lib{history,readline}$(get_libname 4) \ - /$(get_libdir)/lib{history,readline}$(get_libname 5) \ - /$(get_libdir)/lib{history,readline}$(get_libname 6) \ - /$(get_libdir)/lib{history,readline}$(get_libname 7) -} - -pkg_postinst() { - preserve_old_lib_notify \ - /$(get_libdir)/lib{history,readline}$(get_libname 4) \ - /$(get_libdir)/lib{history,readline}$(get_libname 5) \ - /$(get_libdir)/lib{history,readline}$(get_libname 6) \ - /$(get_libdir)/lib{history,readline}$(get_libname 7) -} diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3.ebuild deleted file mode 100644 index 9f84801423..0000000000 --- a/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.3.ebuild +++ /dev/null @@ -1,257 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# There's no standard way of versioning the point releases upstream -# make anyway, so while this was added for RC versions, it's fine -# in general. -QA_PKGCONFIG_VERSION=$(ver_cut 1-2) -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chetramey.asc -inherit flag-o-matic multilib multilib-minimal preserve-libs toolchain-funcs verify-sig - -# Official patches -# See ftp://ftp.cwru.edu/pub/bash/readline-8.1-patches/ -PLEVEL="${PV##*_p}" -MY_PV="${PV/_p*}" -MY_PV="${MY_PV/_/-}" -MY_P="${PN}-${MY_PV}" -MY_PATCHES=() - -# Determine the patchlevel. -case ${PV} in - 9999|*_alpha*|*_beta*|*_rc*) - # Set a negative patchlevel to indicate that it's a pre-release. - PLEVEL=-1 - ;; - *_p*) - PLEVEL=${PV##*_p} - ;; - *) - PLEVEL=0 -esac - -DESCRIPTION="Another cute console display library" -HOMEPAGE="https://tiswww.case.edu/php/chet/readline/rltop.html https://git.savannah.gnu.org/cgit/readline.git" - -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://git.savannah.gnu.org/git/readline.git" - EGIT_BRANCH=devel - inherit git-r3 -elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then - # It can be useful to have snapshots in the pre-release period once - # the first alpha is out, as various bugs get reported and fixed from - # the alpha, and the next pre-release is usually quite far away. - # - # i.e. if it's worth packaging the alpha, it's worth packaging a followup. - READLINE_COMMIT="7cf2d923617659d216db3210f6247740f7dde1d8" - SRC_URI="https://git.savannah.gnu.org/cgit/readline.git/snapshot/readline-${READLINE_COMMIT}.tar.gz -> ${P}-${READLINE_COMMIT}.tar.gz" - S=${WORKDIR}/${PN}-${READLINE_COMMIT} -else - SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz" - SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig )" - S="${WORKDIR}/${MY_P}" - - if [[ ${PLEVEL} -gt 0 ]] ; then - # bash-5.1 -> bash51 - my_p=${PN}$(ver_rs 1-2 '' $(ver_cut 1-2)) - - patch_url= - my_patch_index= - - upstream_url_base="mirror://gnu/readline" - - for ((my_patch_index=1; my_patch_index <= ${PLEVEL} ; my_patch_index++)) ; do - printf -v mangled_patch_ver ${my_p}-%03d ${my_patch_index} - patch_url="${upstream_url_base}/${MY_P}-patches/${mangled_patch_ver}" - - SRC_URI+=" ${patch_url}" - SRC_URI+=" verify-sig? ( ${patch_url}.sig )" - - MY_PATCHES+=( "${DISTDIR}"/${mangled_patch_ver} ) - done - - unset my_p patch_url my_patch_index upstream_url_base - fi -fi - -LICENSE="GPL-3+" -SLOT="0/8" # subslot matches SONAME major -if (( PLEVEL >= 0 )); then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -fi -IUSE="static-libs +unicode utils" - -RDEPEND=">=sys-libs/ncurses-5.9-r3:=[static-libs?,unicode(+)?,${MULTILIB_USEDEP}]" -DEPEND="${RDEPEND}" -BDEPEND=" - virtual/pkgconfig - verify-sig? ( sec-keys/openpgp-keys-chetramey ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-5.0-no_rpath.patch - "${FILESDIR}"/${PN}-7.0-headers.patch - "${FILESDIR}"/${PN}-8.0-headers.patch -) - -src_unpack() { - local patch - - if [[ ${PV} == 9999 ]]; then - git-r3_src_unpack - elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then - default - else - if use verify-sig; then - verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig} - - for patch in "${MY_PATCHES[@]}"; do - verify-sig_verify_detached "${patch}"{,.sig} - done - fi - - unpack "${MY_P}.tar.gz" - - if [[ ${GENTOO_PATCH_VER} ]]; then - unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz" - fi - fi -} - -src_prepare() { - (( PLEVEL > 0 )) && eapply -p0 "${MY_PATCHES[@]}" - - default - - #(( PLEVEL < 0 )) && eautoreconf - - if use prefix && [[ ! -x "${BROOT}"/usr/bin/pkg-config ]] ; then - # If we're bootstrapping, make a guess. We don't have pkg-config - # around yet. bug #818103. - # Incorrectly populating this leads to underlinked libreadline. - local ncurses_libs - local ncurses_libs_suffix=$(usex unicode w '') - - ncurses_libs="-lncurses${ncurses_libs_suffix}" - - if has_version "sys-libs/ncurses[tinfo(+)]" ; then - ncurses_libs+=" -ltinfo${ncurses_libs_suffix}" - fi - else - # Force ncurses linking, bug #71420. - # Use pkg-config to get the right values, bug #457558. - local ncurses_libs=$($(tc-getPKG_CONFIG) ncurses$(usex unicode w '') --libs) - fi - - sed -i \ - -e "/^SHLIB_LIBS=/s:=.*:='${ncurses_libs}':" \ - support/shobj-conf || die - sed -i \ - -e "/[[:space:]]*LIBS=.-lncurses/s:-lncurses:${ncurses_libs}:" \ - examples/rlfe/configure || die - - # Fix building under Gentoo/FreeBSD; upstream FreeBSD deprecated - # objformat for years, so we don't want to rely on that. - sed -i -e '/objformat/s:if .*; then:if true; then:' support/shobj-conf || die - - # For local readline headers - ln -s ../.. examples/rlfe/readline || die -} - -src_configure() { - # Fix implicit decls with widechar funcs - append-cppflags -D_GNU_SOURCE - # https://lists.gnu.org/archive/html/bug-readline/2010-07/msg00013.html - append-cppflags -Dxrealloc=_rl_realloc -Dxmalloc=_rl_malloc -Dxfree=_rl_free - - # Make sure configure picks a better ar than `ar`, bug #484866 - export ac_cv_prog_AR="$(tc-getAR)" - - # Force the test since we used sed above to force it. - export bash_cv_termcap_lib=ncurses - - # Control cross-compiling cases when we know the right answer. - # In cases where the C library doesn't support wide characters, readline - # itself won't work correctly, so forcing the answer below should be OK. - if tc-is-cross-compiler ; then - export bash_cv_func_sigsetjmp="present" - export bash_cv_func_ctype_nonascii="yes" - # bug #503312 - export bash_cv_wcwidth_broken="no" - fi - - # This is for rlfe, but we need to make sure LDFLAGS doesn't change - # so we can re-use the config cache file between the two. - append-ldflags -L. - - multilib-minimal_src_configure -} - -multilib_src_configure() { - local myeconfargs=( - --cache-file="${BUILD_DIR}"/config.cache - --with-curses - $(use_enable static-libs static) - ) - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" - - if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then - # Code is full of AC_TRY_RUN() - mkdir -p examples/rlfe || die - cd examples/rlfe || die - - ECONF_SOURCE="${S}"/examples/rlfe econf --cache-file="${BUILD_DIR}"/config.cache - fi -} - -multilib_src_compile() { - emake - - if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then - # Code is full of AC_TRY_RUN() - cd examples/rlfe || die - local l - for l in readline history ; do - ln -s ../../shlib/lib${l}$(get_libname)* lib${l}$(get_libname) || die - ln -s ../../lib${l}.a lib${l}.a || die - done - emake - fi -} - -multilib_src_install() { - default - - if multilib_is_native_abi ; then - if use utils && ! tc-is-cross-compiler; then - dobin examples/rlfe/rlfe - fi - fi -} - -multilib_src_install_all() { - HTML_DOCS="doc/history.html doc/readline.html doc/rluserman.html" einstalldocs - - dodoc USAGE - docinto ps - dodoc doc/*.ps -} -pkg_preinst() { - # bug #29865 - # Reappeared in bug #595324 with paludis so keeping this for now... - preserve_old_lib \ - /$(get_libdir)/lib{history,readline}$(get_libname 4) \ - /$(get_libdir)/lib{history,readline}$(get_libname 5) \ - /$(get_libdir)/lib{history,readline}$(get_libname 6) \ - /$(get_libdir)/lib{history,readline}$(get_libname 7) -} - -pkg_postinst() { - preserve_old_lib_notify \ - /$(get_libdir)/lib{history,readline}$(get_libname 4) \ - /$(get_libdir)/lib{history,readline}$(get_libname 5) \ - /$(get_libdir)/lib{history,readline}$(get_libname 6) \ - /$(get_libdir)/lib{history,readline}$(get_libname 7) -}