Gentoo Archives: gentoo-commits

From: "Peter Alfredsen (loki_val)" <loki_val@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in app-shells/bash: ChangeLog bash-3.2_p48.ebuild
Date: Thu, 20 Nov 2008 20:57:22
Message-Id: E1L3GaW-0005Jf-Lx@stork.gentoo.org
1 loki_val 08/11/20 20:57:20
2
3 Modified: ChangeLog
4 Added: bash-3.2_p48.ebuild
5 Log:
6 Bump for God, King and Country.
7 (Portage version: 2.2_rc14/cvs/Linux 2.6.28-rc4 x86_64)
8
9 Revision Changes Path
10 1.186 app-shells/bash/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-shells/bash/ChangeLog?rev=1.186&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-shells/bash/ChangeLog?rev=1.186&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-shells/bash/ChangeLog?r1=1.185&r2=1.186
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/app-shells/bash/ChangeLog,v
19 retrieving revision 1.185
20 retrieving revision 1.186
21 diff -u -r1.185 -r1.186
22 --- ChangeLog 17 Nov 2008 20:26:13 -0000 1.185
23 +++ ChangeLog 20 Nov 2008 20:57:20 -0000 1.186
24 @@ -1,6 +1,11 @@
25 # ChangeLog for app-shells/bash
26 # Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/ChangeLog,v 1.185 2008/11/17 20:26:13 flameeyes Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/app-shells/bash/ChangeLog,v 1.186 2008/11/20 20:57:20 loki_val Exp $
29 +
30 +*bash-3.2_p48 (20 Nov 2008)
31 +
32 + 20 Nov 2008; Peter Alfredsen <loki_val@g.o> +bash-3.2_p48.ebuild:
33 + Bump for God, King and Country.
34
35 17 Nov 2008; Diego E. Pettenò <flameeyes@g.o>
36 files/bash-3.0-darwin-conn.patch:
37
38
39
40 1.1 app-shells/bash/bash-3.2_p48.ebuild
41
42 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-shells/bash/bash-3.2_p48.ebuild?rev=1.1&view=markup
43 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/app-shells/bash/bash-3.2_p48.ebuild?rev=1.1&content-type=text/plain
44
45 Index: bash-3.2_p48.ebuild
46 ===================================================================
47 # Copyright 1999-2008 Gentoo Foundation
48 # Distributed under the terms of the GNU General Public License v2
49 # $Header: /var/cvsroot/gentoo-x86/app-shells/bash/bash-3.2_p48.ebuild,v 1.1 2008/11/20 20:57:20 loki_val Exp $
50
51 inherit eutils flag-o-matic toolchain-funcs multilib
52
53 # Official patchlevel
54 # See ftp://ftp.cwru.edu/pub/bash/bash-3.2-patches/
55 PLEVEL=${PV##*_p}
56 MY_PV=${PV/_p*}
57 MY_P=${PN}-${MY_PV}
58 READLINE_VER=5.2
59 READLINE_PLEVEL=0 # both readline patches are also released as bash patches
60
61 DESCRIPTION="The standard GNU Bourne again shell"
62 HOMEPAGE="http://cnswww.cns.cwru.edu/~chet/bash/bashtop.html"
63 SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz
64 ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz
65 $(for ((i=1; i<=PLEVEL; i++)); do
66 printf 'ftp://ftp.cwru.edu/pub/bash/bash-%s-patches/bash%s-%03d\n' \
67 ${MY_PV} ${MY_PV/\.} ${i}
68 printf 'mirror://gnu/bash/bash-%s-patches/bash%s-%03d\n' \
69 ${MY_PV} ${MY_PV/\.} ${i}
70 done)
71 $(for ((i=1; i<=READLINE_PLEVEL; i++)); do
72 printf 'ftp://ftp.cwru.edu/pub/bash/readline-%s-patches/readline%s-%03d\n' \
73 ${READLINE_VER} ${READLINE_VER/\.} ${i}
74 printf 'mirror://gnu/bash/readline-%s-patches/readline%s-%03d\n' \
75 ${READLINE_VER} ${READLINE_VER/\.} ${i}
76 done)"
77
78 LICENSE="GPL-2"
79 SLOT="0"
80 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd"
81 IUSE="afs bashlogger examples nls plugins vanilla"
82
83 DEPEND=">=sys-libs/ncurses-5.2-r2"
84 RDEPEND="${DEPEND}
85 !<sys-apps/portage-2.1.5
86 !<sys-apps/paludis-0.26.0_alpha5"
87
88 S=${WORKDIR}/${MY_P}
89
90 pkg_setup() {
91 if is-flag -malign-double ; then #7332
92 eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
93 eerror "as it breaks LFS (struct stat64) on x86."
94 die "remove -malign-double from your CFLAGS mr ricer"
95 fi
96 }
97
98 src_unpack() {
99 unpack ${MY_P}.tar.gz
100 cd "${S}"
101
102 # Include official patches
103 local i
104 for ((i=1; i<=PLEVEL; i++)); do
105 epatch "${DISTDIR}"/${PN}${MY_PV/\.}-$(printf '%03d' ${i})
106 done
107 cd lib/readline
108 for ((i=1; i<=READLINE_PLEVEL; i++)); do
109 epatch "${DISTDIR}"/readline${READLINE_VER/\.}-$(printf '%03d' ${i})
110 done
111 cd ../..
112
113 if ! use vanilla ; then
114 epatch "${FILESDIR}"/autoconf-mktime-2.59.patch #220040
115 epatch "${FILESDIR}"/${PN}-3.1-gentoo.patch
116 epatch "${FILESDIR}"/${PN}-3.2-loadables.patch
117 epatch "${FILESDIR}"/${PN}-3.2-parallel-build.patch #189671
118 epatch "${FILESDIR}"/${PN}-3.2-ldflags-for-build.patch #211947
119
120 # Fix process substitution on BSD.
121 epatch "${FILESDIR}"/${PN}-3.2-process-subst.patch
122
123 epatch "${FILESDIR}"/${PN}-3.2-ulimit.patch
124 # Don't barf on handled signals in scripts
125 epatch "${FILESDIR}"/${PN}-3.0-trap-fg-signals.patch
126 epatch "${FILESDIR}"/${PN}-3.2-dev-fd-test-as-user.patch #131875
127 # Log bash commands to syslog #91327
128 if use bashlogger ; then
129 echo
130 ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs."
131 ewarn "This will log ALL output you enter into the shell, you have been warned."
132 ebeep
133 epause
134 epatch "${FILESDIR}"/${PN}-3.1-bash-logger.patch
135 fi
136 fi
137
138 epatch "${FILESDIR}"/${PN}-3.0-configs.patch
139 }
140
141 src_compile() {
142 local myconf=
143
144 # Always use the buildin readline, else if we update readline
145 # bash gets borked as readline is usually not binary compadible
146 # between minor versions.
147 #myconf="${myconf} $(use_with !readline installed-readline)"
148 myconf="${myconf} --without-installed-readline"
149
150 # Don't even think about building this statically without
151 # reading Bug 7714 first. If you still build it statically,
152 # don't come crying to use with bugs ;).
153 #use static && export LDFLAGS="${LDFLAGS} -static"
154 use nls || myconf="${myconf} --disable-nls"
155
156 # Force linking with system curses ... the bundled termcap lib
157 # sucks bad compared to ncurses
158 myconf="${myconf} --with-curses"
159
160 # Default path is to use /usr/local/..... regardless. This little
161 # magic will set the default path to /usr/..... and keep us from
162 # worrying about the rest of the path getting out of sync with the
163 # ebuild code.
164 eval $(echo export $(ac_default_prefix=/usr; eval echo $(grep DEBUGGER_START_FILE= configure)))
165
166 use plugins && append-ldflags -Wl,-rpath,/usr/$(get_libdir)/bash
167 econf \
168 $(use_with afs) \
169 --disable-profiling \
170 --without-gnu-malloc \
171 ${myconf} || die
172 emake || die "make failed"
173
174 if use plugins ; then
175 emake -C examples/loadables all others || die
176 fi
177 }
178
179 src_install() {
180 emake install DESTDIR="${D}" || die
181
182 dodir /bin
183 mv "${D}"/usr/bin/bash "${D}"/bin/ || die
184 dosym bash /bin/rbash
185
186 insinto /etc/bash
187 doins "${FILESDIR}"/{bashrc,bash_logout}
188 insinto /etc/skel
189 for f in bash{_logout,_profile,rc} ; do
190 newins "${FILESDIR}"/dot-${f} .${f}
191 done
192
193 sed -i -e "s:#${USERLAND}#@::" "${D}"/etc/skel/.bashrc "${D}"/etc/bash/bashrc
194 sed -i -e '/#@/d' "${D}"/etc/skel/.bashrc "${D}"/etc/bash/bashrc
195
196 if use plugins ; then
197 exeinto /usr/$(get_libdir)/bash
198 doexe $(echo examples/loadables/*.o | sed 's:\.o::g') || die
199 fi
200
201 if use examples ; then
202 for d in examples/{functions,misc,scripts,scripts.noah,scripts.v2} ; do
203 exeinto /usr/share/doc/${PF}/${d}
204 insinto /usr/share/doc/${PF}/${d}
205 for f in ${d}/* ; do
206 if [[ ${f##*/} != PERMISSION ]] && [[ ${f##*/} != *README ]] ; then
207 doexe ${f}
208 else
209 doins ${f}
210 fi
211 done
212 done
213 fi
214
215 doman doc/*.1
216 dodoc README NEWS AUTHORS CHANGES COMPAT Y2K doc/FAQ doc/INTRO
217 dosym bash.info /usr/share/info/bashref.info
218 }
219
220 pkg_preinst() {
221 if [[ -e ${ROOT}/etc/bashrc ]] && [[ ! -d ${ROOT}/etc/bash ]] ; then
222 mkdir -p "${ROOT}"/etc/bash
223 mv -f "${ROOT}"/etc/bashrc "${ROOT}"/etc/bash/
224 fi
225
226 # our bash_logout is just a place holder so dont
227 # force users to go through etc-update all the time
228 if [[ -e ${ROOT}/etc/bash/bash_logout ]] ; then
229 rm -f "${D}"/etc/bash/bash_logout
230 fi
231
232 if [[ -L ${ROOT}/bin/sh ]]; then
233 # rewrite the symlink to ensure that its mtime changes. having /bin/sh
234 # missing even temporarily causes a fatal error with paludis.
235 local target=$(readlink "${ROOT}"/bin/sh)
236 ln -sf "${target}" "${ROOT}"/bin/sh
237 fi
238 }
239
240 pkg_postinst() {
241 # If /bin/sh does not exist, provide it
242 if [[ ! -e ${ROOT}/bin/sh ]]; then
243 ln -sf bash "${ROOT}"/bin/sh
244 fi
245 }