commit:     c3d9217a84f18268b52928c876297503acb16fc0
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Sep 10 00:18:27 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Sep 10 00:22:40 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c3d9217a

sys-libs/readline: add 8.2_rc4

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-libs/readline/Manifest                |   2 +
 sys-libs/readline/readline-8.2_rc4.ebuild | 246 ++++++++++++++++++++++++++++++
 2 files changed, 248 insertions(+)

diff --git a/sys-libs/readline/Manifest b/sys-libs/readline/Manifest
index 1619a4abf216..d6c13fa4f2c7 100644
--- a/sys-libs/readline/Manifest
+++ b/sys-libs/readline/Manifest
@@ -2,6 +2,8 @@ DIST readline-8.1.tar.gz 2993288 BLAKE2B 
f0feca1ea3517b2b613adacac8c997cce0e86aa
 DIST readline-8.1.tar.gz.sig 95 BLAKE2B 
8a297ef2ebf815ac53f02d6395aa2ff9f24234aef6b9793bfcd5a610cd3a5024182ad8ec8beb75eadd5cf876c57cd56d4226075578a86e0e2421d2e9b1677aa5
 SHA512 
42a6052d5882f16e5b6f8cd16433d793a9cbb43cf1886b2d858dc65ce067a4c39c8dda7331e52f76426c43de02c358f9ffdaf5c8fd7b089479008c1e5aa19112
 DIST readline-8.2-rc3.tar.gz 3043957 BLAKE2B 
49d68306f84add2f4e07a151c417aae9829761d0c94aaab5c2ec4dde49bcfdbd8c43907a5f5a00366850309c30a725f2628641e7105257108569efbc70420588
 SHA512 
136a04e070457b7152325951cd9e414d5598bcc28e41d31f6651d21b584a08282bab7c0e07edf786ef6855a6cdc346ab55ee670d06de7fdda7847a1c9b551e03
 DIST readline-8.2-rc3.tar.gz.sig 95 BLAKE2B 
4af655b0a4d3faf5f9be011459f56737f48204d7d6757cd8571f5a3cfd7bc1e820def8fb7227b5431d19660a48713e5a04c95d8f5ea43439483f3ce858cb1d77
 SHA512 
06aec40b24f67eff72dc53b902b6f1c5df926a56b4d67df530b6243200d261747d3d2112b16ff83f921376437cfd941b8ddbe157babf9302ce60ff54a022e65d
+DIST readline-8.2-rc4.tar.gz 3044180 BLAKE2B 
5338abf9ab2548f81d90017edef206cc887a5ec67e528c56ebdd2cd9b2032a2e039b1f563dbd074c0df9b071fde1dbd0d0b5e5f35ccd3eb138d9ed9b276dac03
 SHA512 
29df7bfd81ca7899bf515428f1e7aac2df50bafa701c9c1bfdbf2c6934b4fa712de0e8d1ddb55f398db412e03ab8a4b17a5a270acaab2f1087026998ca97c190
+DIST readline-8.2-rc4.tar.gz.sig 95 BLAKE2B 
d077365719b6cc44d2b9030697e64dce445b3583f812e981d86bb3bf0baf0d5e207a52191d16916533ed022be84f06c2b3b36bc3aa91389e7a3205ef596c4e1b
 SHA512 
f1b8eeb0957a8bf64e7a1fbaa50267d5e37bdc88cb22e56b6f89a23d3871d6e5eb5f17888a8e0bb7bccf850f95b07bf06708617945fd24a98b213ce7de5b2a72
 DIST readline81-001 2454 BLAKE2B 
7ec4e5c39a224a70643b44b88bcfef5198e199c76f2a34f0b0ce24f1747dd46be49ddf93871c474cda64322b4358127fec4c2401d19422f84934546bbe1f3bf2
 SHA512 
cfbef10bdeb562a302ccf214878d02ebadf799343b3d2d7996a282f81bcfde83997ba6dcc9a8477af4dd7c73bca74105ca00a81e42ed13321672bd2930550e54
 DIST readline81-001.sig 95 BLAKE2B 
7d523d0fc21772cb03aa4b5d66ea58c1a99a6c0e4a8625e89cad015cbff63cd68e08207ca5150819225300ac864806032888104bbbea64ca38ebf89e28c24b7e
 SHA512 
7fa3747e388aecb26f2d4f8346b89b367710ea99a14618c625066b820901dc467bd156ec37340fde1f86f0fe0d6b33044c1ed5768cf8ed1a25386d32dc6419a6
 DIST readline81-002 1242 BLAKE2B 
4ef0404561bd8fc5559e8e5f675ae3f12c467178a8954f54f3204c2d09b88ccec960e807c7af0ec3514b489b676e3be51f98351e377fb18e3d7a14d33d4da69d
 SHA512 
e47c029b82cf3a4d44e85c4348f7e059c56726694c190d84186822e1c893e1c006e7ec75f33c36791112f81abd792a2e2fdae9a65cd128f3c89ff4ffd9a9a1ff

diff --git a/sys-libs/readline/readline-8.2_rc4.ebuild 
b/sys-libs/readline/readline-8.2_rc4.ebuild
new file mode 100644
index 000000000000..4bc9fb0d90a8
--- /dev/null
+++ b/sys-libs/readline/readline-8.2_rc4.ebuild
@@ -0,0 +1,246 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# 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="${BROOT}"/usr/share/openpgp-keys/chetramey.asc
+inherit flag-o-matic multilib multilib-minimal preserve-libs toolchain-funcs 
usr-ldscript 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=()
+
+is_release() {
+       case ${PV} in
+               9999|*_alpha*|*_beta*|*_rc*)
+                       return 1
+                       ;;
+               *)
+                       return 0
+                       ;;
+       esac
+}
+
+[[ ${PV} != *_p* ]] && PLEVEL=0
+
+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 is_release ; then
+       SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz"
+       SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig )"
+
+       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=
+
+               for ((my_patch_index=1; my_patch_index <= ${PLEVEL} ; 
my_patch_index++)) ; do
+                       for url in mirror://gnu/${pn} 
ftp://ftp.cwru.edu/pub/bash ; do
+                               patch_url=$(printf "${url}/${PN}-$(ver_cut 
1-2)-patches/${my_p}-%03d" ${my_patch_index})
+                               SRC_URI+=" ${patch_url}"
+                               SRC_URI+=" verify-sig? ( ${patch_url}.sig )"
+                       done
+
+                       MY_PATCHES+=( "${DISTDIR}"/$(printf ${my_p}-%03d 
${my_patch_index}) )
+               done
+
+               unset my_pn patch_url my_patch_index
+       fi
+else
+       SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz 
ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz";
+       SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig 
ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz.sig )"
+fi
+
+if ! is_release ; then
+       inherit autotools
+fi
+
+LICENSE="GPL-3"
+SLOT="0/8"  # subslot matches SONAME major
+if is_release ; then
+       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"
+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 )"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-5.0-no_rpath.patch
+       "${FILESDIR}"/${PN}-6.2-rlfe-tgoto.patch # bug #385091
+       "${FILESDIR}"/${PN}-7.0-headers.patch
+       "${FILESDIR}"/${PN}-8.0-headers.patch
+
+       # TODO: rebase
+       #"${FILESDIR}"/${PN}-8.0-darwin-shlib-versioning.patch
+)
+
+src_unpack() {
+       if [[ ${PV} == 9999 ]] ; then
+               git-r3_src_unpack
+       else
+               # Needed because we don't want the patches being unpacked
+               # (which emits annoying and useless error messages)
+               verify-sig_src_unpack
+               unpack ${MY_P}.tar.gz
+       fi
+}
+
+src_prepare() {
+       [[ ${PLEVEL} -gt 0 ]] && eapply -p0 "${MY_PATCHES[@]}"
+
+       default
+
+       is_release || 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
+               use kernel_Winnt || 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
+               # bug #4411
+               gen_usr_ldscript -a readline history
+
+               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)
+}

Reply via email to