summaryrefslogtreecommitdiff
path: root/app-shells/bash/bash-9999.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'app-shells/bash/bash-9999.ebuild')
-rw-r--r--app-shells/bash/bash-9999.ebuild38
1 files changed, 33 insertions, 5 deletions
diff --git a/app-shells/bash/bash-9999.ebuild b/app-shells/bash/bash-9999.ebuild
index dc26c74b8f9d..51280256f5de 100644
--- a/app-shells/bash/bash-9999.ebuild
+++ b/app-shells/bash/bash-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -33,7 +33,7 @@ is_release() {
# The version of readline this bash normally ships with.
# Note: right now, we don't use the system copy of readline for bash for non-releases.
-READLINE_VER="8.2_p1"
+READLINE_VER="8.3_alpha"
DESCRIPTION="The standard GNU Bourne again shell"
HOMEPAGE="https://tiswww.case.edu/php/chet/bash/bashtop.html https://git.savannah.gnu.org/cgit/bash.git"
@@ -100,7 +100,6 @@ RDEPEND="
"
# We only need bison (yacc) when the .y files get patched (bash42-005, bash51-011)
BDEPEND="
- sys-devel/bison
pgo? ( dev-util/gperf )
verify-sig? ( sec-keys/openpgp-keys-chetramey )
"
@@ -185,6 +184,10 @@ src_configure() {
# may misbehave at runtime.
unset YACC
+ # wcsnwidth(), substring() issues with -Wlto-type-mismatch, reported
+ # upstream to Chet by email.
+ filter-lto
+
local myconf=(
--disable-profiling
@@ -298,9 +301,10 @@ src_install() {
insinto /etc/bash
doins "${FILESDIR}"/bash_logout
- doins "$(prefixify_ro "${FILESDIR}"/bashrc)"
+ newins "$(prefixify_ro "${FILESDIR}"/bashrc-r1)" bashrc
- keepdir /etc/bash/bashrc.d
+ insinto /etc/bash/bashrc.d
+ doins "${FILESDIR}"/bashrc.d/*.bash
insinto /etc/skel
for f in bash{_logout,_profile,rc} ; do
@@ -364,8 +368,32 @@ pkg_preinst() {
}
pkg_postinst() {
+ local old_ver
+
# If /bin/sh does not exist, provide it
if [[ ! -e ${EROOT}/bin/sh ]] ; then
ln -sf bash "${EROOT}"/bin/sh
fi
+
+ read -r old_ver <<<"${REPLACING_VERSIONS}"
+ if [[ ! $old_ver ]] ; then
+ :
+ elif ver_test "$old_ver" -ge "5.2" && ver_test "$old_ver" -ge "5.2_p26-r1" ; then
+ return
+ elif ver_test "$old_ver" -lt "5.2" && ver_test "$old_ver" -ge "5.1_p16-r8" ; then
+ return
+ fi
+
+ einfo "Files situated under /etc/bash/bashrc.d must now have a suffix of .sh or .bash."
+ einfo ""
+ einfo "Gentoo now defaults to defining PROMPT_COMMAND as an array. Depending on the"
+ einfo "characteristics of the operating environment, this array may contain commands"
+ einfo "to set the window and pane title. Users that choose to customise this variable"
+ einfo "in ~/.bashrc are advised to append their commands, using the following syntax."
+ einfo ""
+ einfo "PROMPT_COMMAND+=('custom command goes here')"
+ einfo ""
+ einfo "Alternatively, users that wish to opt out of Gentoo's window title setting"
+ einfo "behaviour may now do so by either unsetting PROMPT_COMMAND or by re-defining it"
+ einfo "as desired. Previously, there was no formally supported method of opting out."
}