Lines 1-10
Link Here
|
1 |
# Copyright 1999-2014 Gentoo Foundation |
1 |
# Copyright 1999-2014 Gentoo Foundation |
2 |
# Distributed under the terms of the GNU General Public License v2 |
2 |
# Distributed under the terms of the GNU General Public License v2 |
3 |
# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/bash-4.3_p30-r1.ebuild,v 1.1 2014/11/09 20:41:28 mgorny Exp $ |
|
|
4 |
|
3 |
|
5 |
EAPI="4" |
4 |
EAPI="4" |
6 |
|
5 |
|
7 |
inherit eutils flag-o-matic toolchain-funcs multilib |
6 |
inherit eutils flag-o-matic toolchain-funcs multilib prefix |
8 |
|
7 |
|
9 |
# Official patchlevel |
8 |
# Official patchlevel |
10 |
# See ftp://ftp.cwru.edu/pub/bash/bash-4.3-patches/ |
9 |
# See ftp://ftp.cwru.edu/pub/bash/bash-4.3-patches/ |
Lines 38-44
Link Here
|
38 |
|
37 |
|
39 |
LICENSE="GPL-3" |
38 |
LICENSE="GPL-3" |
40 |
SLOT="0" |
39 |
SLOT="0" |
41 |
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd" |
40 |
KEYWORDS="~amd64-linux" |
42 |
IUSE="afs bashlogger examples mem-scramble +net nls plugins +readline vanilla" |
41 |
IUSE="afs bashlogger examples mem-scramble +net nls plugins +readline vanilla" |
43 |
|
42 |
|
44 |
DEPEND=">=sys-libs/ncurses-5.2-r2 |
43 |
DEPEND=">=sys-libs/ncurses-5.2-r2 |
Lines 88-93
Link Here
|
88 |
epatch "${FILESDIR}"/${PN}-4.3-append-process-segfault.patch |
87 |
epatch "${FILESDIR}"/${PN}-4.3-append-process-segfault.patch |
89 |
epatch "${FILESDIR}"/${PN}-4.3-term-cleanup.patch |
88 |
epatch "${FILESDIR}"/${PN}-4.3-term-cleanup.patch |
90 |
|
89 |
|
|
|
90 |
# this adds additional prefixes |
91 |
epatch "${FILESDIR}"/${PN}-4.0-configs-prefix.patch |
92 |
eprefixify pathnames.h.in |
93 |
|
94 |
epatch "${FILESDIR}"/${PN}-4.0-bashintl-in-siglist.patch |
95 |
|
96 |
# Fix not to reference a disabled symbol if USE=-readline, breaks |
97 |
# Darwin, bug #500932 |
98 |
# if use !readline ; then |
99 |
# sed -i -e 's/enable_hostname_completion//' builtins/shopt.def || die |
100 |
# fi |
101 |
|
102 |
# Nasty trick to set bashbug's shebang to bash instead of sh. We don't have |
103 |
# sh while bootstrapping for the first time, This works around bug 309825 |
104 |
sed -i -e '1s:sh:bash:' support/bashbug.sh || die |
105 |
|
106 |
# modify the bashrc-r1 file for prefix |
107 |
pushd "${T}" > /dev/null || die |
108 |
cp "${FILESDIR}"/bashrc-r1 . |
109 |
epatch "${FILESDIR}"/bashrc-prefix-r1.patch |
110 |
eprefixify bashrc-r1 |
111 |
popd > /dev/null |
112 |
|
113 |
# DON'T YOU EVER PUT eautoreconf OR SIMILAR HERE! THIS IS A CRITICAL |
114 |
# PACKAGE THAT MUST NOT RELY ON AUTOTOOLS, USE A SELF-SUFFICIENT PATCH |
115 |
# INSTEAD!!! |
116 |
|
91 |
epatch_user |
117 |
epatch_user |
92 |
} |
118 |
} |
93 |
|
119 |
|
Lines 96-101
Link Here
|
96 |
|
122 |
|
97 |
# For descriptions of these, see config-top.h |
123 |
# For descriptions of these, see config-top.h |
98 |
# bashrc/#26952 bash_logout/#90488 ssh/#24762 |
124 |
# bashrc/#26952 bash_logout/#90488 ssh/#24762 |
|
|
125 |
if use prefix ; then |
126 |
append-cppflags \ |
127 |
-DDEFAULT_PATH_VALUE=\'\"${EPREFIX}/usr/sbin:${EPREFIX}/usr/bin:${EPREFIX}/sbin:${EPREFIX}/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\' \ |
128 |
-DSTANDARD_UTILS_PATH=\'\"${EPREFIX}/bin:${EPREFIX}/usr/bin:${EPREFIX}/sbin:${EPREFIX}/usr/sbin:/bin:/usr/bin:/sbin:/usr/sbin\"\' \ |
129 |
-DSYS_BASHRC=\'\"${EPREFIX}/etc/bash/bashrc\"\' \ |
130 |
-DSYS_BASH_LOGOUT=\'\"${EPREFIX}/etc/bash/bash_logout\"\' \ |
131 |
-DNON_INTERACTIVE_LOGIN_SHELLS \ |
132 |
-DSSH_SOURCE_BASHRC \ |
133 |
$(use bashlogger && echo -DSYSLOG_HISTORY) |
134 |
else |
99 |
append-cppflags \ |
135 |
append-cppflags \ |
100 |
-DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\' \ |
136 |
-DDEFAULT_PATH_VALUE=\'\"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\"\' \ |
101 |
-DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \ |
137 |
-DSTANDARD_UTILS_PATH=\'\"/bin:/usr/bin:/sbin:/usr/sbin\"\' \ |
Lines 104-109
Link Here
|
104 |
-DNON_INTERACTIVE_LOGIN_SHELLS \ |
140 |
-DNON_INTERACTIVE_LOGIN_SHELLS \ |
105 |
-DSSH_SOURCE_BASHRC \ |
141 |
-DSSH_SOURCE_BASHRC \ |
106 |
$(use bashlogger && echo -DSYSLOG_HISTORY) |
142 |
$(use bashlogger && echo -DSYSLOG_HISTORY) |
|
|
143 |
fi |
144 |
|
145 |
# IRIX's MIPSpro produces garbage with >= -O2, bug #209137 |
146 |
[[ ${CHOST} == mips-sgi-irix* ]] && replace-flags -O? -O1 |
147 |
|
148 |
if [[ ${CHOST} == *-aix* ]] || [[ ${CHOST} == *-hpux* ]] ; then |
149 |
# Avoid finding tgetent() in anything else but ncurses library, |
150 |
# as <termcap.h> is provided by ncurses, even during bootstrap |
151 |
# on AIX and HP-UX, and we would get undefined symbols like |
152 |
# BC, PC, UP if linking against something else. |
153 |
# The bash-bug is that it doesn't check for <termcap.h> provider, |
154 |
# and unfortunately {,n}curses is checked last. |
155 |
# Even if ncurses provides libcurses.so->libncurses.so symlink, |
156 |
# it feels more clean to link against libncurses.so directly. |
157 |
# (all configure-variables for tgetent() are shown here) |
158 |
export ac_cv_func_tgetent=no |
159 |
export ac_cv_lib_termcap_tgetent=no # found on HP-UX |
160 |
export ac_cv_lib_tinfo_tgetent=no |
161 |
export ac_cv_lib_curses_tgetent=no # found on AIX |
162 |
#export ac_cv_lib_ncurses_tgetent=no |
163 |
fi |
107 |
|
164 |
|
108 |
# Don't even think about building this statically without |
165 |
# Don't even think about building this statically without |
109 |
# reading Bug 7714 first. If you still build it statically, |
166 |
# reading Bug 7714 first. If you still build it statically, |
Lines 131-137
Link Here
|
131 |
fi |
188 |
fi |
132 |
|
189 |
|
133 |
if use plugins; then |
190 |
if use plugins; then |
134 |
append-ldflags -Wl,-rpath,/usr/$(get_libdir)/bash |
191 |
case ${CHOST} in |
|
|
192 |
*-linux-gnu | *-solaris* | *-freebsd* ) |
193 |
append-ldflags -Wl,-rpath,"${EPREFIX}"/usr/$(get_libdir)/bash |
194 |
;; |
195 |
# Darwin doesn't need an rpath here (in fact doesn't grok the argument) |
196 |
esac |
135 |
else |
197 |
else |
136 |
# Disable the plugins logic by hand since bash doesn't |
198 |
# Disable the plugins logic by hand since bash doesn't |
137 |
# provide a way of doing it. |
199 |
# provide a way of doing it. |
Lines 176-182
Link Here
|
176 |
|
238 |
|
177 |
insinto /etc/bash |
239 |
insinto /etc/bash |
178 |
doins "${FILESDIR}"/bash_logout |
240 |
doins "${FILESDIR}"/bash_logout |
179 |
newins "${FILESDIR}"/bashrc-r1 bashrc |
241 |
newins "${T}"/bashrc-r1 bashrc |
180 |
keepdir /etc/bash/bashrc.d |
242 |
keepdir /etc/bash/bashrc.d |
181 |
insinto /etc/skel |
243 |
insinto /etc/skel |
182 |
for f in bash{_logout,_profile,rc} ; do |
244 |
for f in bash{_logout,_profile,rc} ; do |