1 |
nirbheek 12/01/05 13:48:34 |
2 |
|
3 |
Modified: ChangeLog |
4 |
Added: thunderbird-9.0.ebuild |
5 |
Log: |
6 |
Security bump + hardened merge fix |
7 |
|
8 |
(Portage version: 2.2.0_alpha84/cvs/Linux x86_64) |
9 |
|
10 |
Revision Changes Path |
11 |
1.112 mail-client/thunderbird/ChangeLog |
12 |
|
13 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/ChangeLog?rev=1.112&view=markup |
14 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/ChangeLog?rev=1.112&content-type=text/plain |
15 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/ChangeLog?r1=1.111&r2=1.112 |
16 |
|
17 |
Index: ChangeLog |
18 |
=================================================================== |
19 |
RCS file: /var/cvsroot/gentoo-x86/mail-client/thunderbird/ChangeLog,v |
20 |
retrieving revision 1.111 |
21 |
retrieving revision 1.112 |
22 |
diff -u -r1.111 -r1.112 |
23 |
--- ChangeLog 27 Dec 2011 00:14:18 -0000 1.111 |
24 |
+++ ChangeLog 5 Jan 2012 13:48:34 -0000 1.112 |
25 |
@@ -1,6 +1,11 @@ |
26 |
# ChangeLog for mail-client/thunderbird |
27 |
-# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 |
28 |
-# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/ChangeLog,v 1.111 2011/12/27 00:14:18 halcy0n Exp $ |
29 |
+# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 |
30 |
+# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/ChangeLog,v 1.112 2012/01/05 13:48:34 nirbheek Exp $ |
31 |
+ |
32 |
+*thunderbird-9.0 (05 Jan 2012) |
33 |
+ |
34 |
+ 05 Jan 2012; Nirbheek Chauhan <nirbheek@g.o> +thunderbird-9.0.ebuild: |
35 |
+ Security bump + hardened merge fix |
36 |
|
37 |
27 Dec 2011; Mark Loeser <halcy0n@g.o> thunderbird-7.0.1-r1.ebuild, |
38 |
thunderbird-8.0-r1.ebuild: |
39 |
|
40 |
|
41 |
|
42 |
1.1 mail-client/thunderbird/thunderbird-9.0.ebuild |
43 |
|
44 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/thunderbird-9.0.ebuild?rev=1.1&view=markup |
45 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/thunderbird-9.0.ebuild?rev=1.1&content-type=text/plain |
46 |
|
47 |
Index: thunderbird-9.0.ebuild |
48 |
=================================================================== |
49 |
# Copyright 1999-2012 Gentoo Foundation |
50 |
# Distributed under the terms of the GNU General Public License v2 |
51 |
# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/thunderbird-9.0.ebuild,v 1.1 2012/01/05 13:48:34 nirbheek Exp $ |
52 |
|
53 |
EAPI="3" |
54 |
WANT_AUTOCONF="2.1" |
55 |
|
56 |
inherit flag-o-matic toolchain-funcs mozconfig-3 makeedit multilib mozextension autotools pax-utils python check-reqs nsplugins |
57 |
|
58 |
TB_PV="${PV/_beta/b}" |
59 |
TB_P="${PN}-${TB_PV}" |
60 |
EMVER="1.3.4" |
61 |
|
62 |
DESCRIPTION="Thunderbird Mail Client" |
63 |
HOMEPAGE="http://www.mozilla.com/en-US/thunderbird/" |
64 |
|
65 |
KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux" |
66 |
SLOT="0" |
67 |
LICENSE="|| ( MPL-1.1 GPL-2 LGPL-2.1 )" |
68 |
IUSE="bindist gconf +crashreporter +crypt +ipc +lightning mozdom +webm" |
69 |
PATCH="${P}-patches-0.1" |
70 |
PATCHFF="firefox-${PV}-patches-0.5" |
71 |
|
72 |
FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/" |
73 |
SRC_URI="${FTP_URI}/${TB_PV}/source/${TB_P}.source.tar.bz2 |
74 |
crypt? ( http://www.mozilla-enigmail.org/download/source/enigmail-${EMVER}.tar.gz ) |
75 |
http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar.xz |
76 |
http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCHFF}.tar.xz" |
77 |
|
78 |
if ! [[ ${PV} =~ alpha|beta ]]; then |
79 |
# This list can be updated using scripts/get_langs.sh from the mozilla overlay |
80 |
LANGS=(ar be bg bn-BD br ca cs da de el en en-GB en-US es-AR es-ES et eu fi |
81 |
fr fy-NL ga-IE gd gl he hu id is it ja ko lt nb-NO nl nn-NO pa-IN pl pt-BR |
82 |
pt-PT rm ro ru si sk sl sq sv-SE ta-LK tr uk vi zh-CN zh-TW) |
83 |
|
84 |
for X in "${LANGS[@]}" ; do |
85 |
# en and en_US are handled internally |
86 |
if [[ ${X} != en ]] && [[ ${X} != en-US ]]; then |
87 |
SRC_URI="${SRC_URI} |
88 |
linguas_${X/-/_}? ( ${FTP_URI}/${TB_PV}/linux-i686/xpi/${X}.xpi -> ${P}-${X}.xpi )" |
89 |
fi |
90 |
IUSE="${IUSE} linguas_${X/-/_}" |
91 |
# Install all the specific locale xpis if there's no generic locale xpi |
92 |
# Example: there's no pt.xpi, so install all pt-*.xpi |
93 |
if ! has ${X%%-*} "${LANGS[@]}"; then |
94 |
SRC_URI="${SRC_URI} |
95 |
linguas_${X%%-*}? ( ${FTP_URI}/${TB_PV}/linux-i686/xpi/${X}.xpi -> ${P}-${X}.xpi )" |
96 |
IUSE="${IUSE} linguas_${X%%-*}" |
97 |
fi |
98 |
done |
99 |
fi |
100 |
|
101 |
RDEPEND=">=sys-devel/binutils-2.16.1 |
102 |
>=dev-libs/nss-3.12.10 |
103 |
>=dev-libs/nspr-4.8.8 |
104 |
crashreporter? ( net-misc/curl ) |
105 |
gconf? ( >=gnome-base/gconf-1.2.1:2 ) |
106 |
media-libs/libpng[apng] |
107 |
webm? ( media-libs/libvpx |
108 |
media-libs/alsa-lib ) |
109 |
virtual/libffi |
110 |
!x11-plugins/enigmail |
111 |
system-sqlite? ( >=dev-db/sqlite-3.7.5[fts3,secure-delete,unlock-notify,debug=] ) |
112 |
crypt? ( || ( |
113 |
( >=app-crypt/gnupg-2.0 |
114 |
|| ( |
115 |
app-crypt/pinentry[gtk] |
116 |
app-crypt/pinentry[qt4] |
117 |
) |
118 |
) |
119 |
=app-crypt/gnupg-1.4* |
120 |
) )" |
121 |
|
122 |
DEPEND="${RDEPEND}" |
123 |
|
124 |
S="${WORKDIR}"/comm-release |
125 |
|
126 |
# TODO: Move all the linguas crap to an eclass |
127 |
linguas() { |
128 |
# Generate the list of language packs called "linguas" |
129 |
# This list is used to install the xpi language packs |
130 |
local LINGUA |
131 |
for LINGUA in ${LINGUAS}; do |
132 |
if has ${LINGUA} en en_US; then |
133 |
# For mozilla products, en and en_US are handled internally |
134 |
continue |
135 |
# If this language is supported by ${P}, |
136 |
elif has ${LINGUA} "${LANGS[@]//-/_}"; then |
137 |
# Add the language to linguas, if it isn't already there |
138 |
has ${LINGUA//_/-} "${linguas[@]}" || linguas+=(${LINGUA//_/-}) |
139 |
continue |
140 |
# For each short LINGUA that isn't in LANGS, |
141 |
# add *all* long LANGS to the linguas list |
142 |
elif ! has ${LINGUA%%-*} "${LANGS[@]}"; then |
143 |
for LANG in "${LANGS[@]}"; do |
144 |
if [[ ${LANG} == ${LINGUA}-* ]]; then |
145 |
has ${LANG} "${linguas[@]}" || linguas+=(${LANG}) |
146 |
continue 2 |
147 |
fi |
148 |
done |
149 |
fi |
150 |
ewarn "Sorry, but ${P} does not support the ${LINGUA} locale" |
151 |
done |
152 |
} |
153 |
|
154 |
pkg_setup() { |
155 |
moz_pkgsetup |
156 |
|
157 |
export MOZILLA_DIR="${S}/mozilla" |
158 |
|
159 |
if ! use bindist ; then |
160 |
elog "You are enabling official branding. You may not redistribute this build" |
161 |
elog "to any users on your network or the internet. Doing so puts yourself into" |
162 |
elog "a legal problem with Mozilla Foundation" |
163 |
elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag" |
164 |
elog |
165 |
fi |
166 |
|
167 |
# Ensure we have enough disk space to compile |
168 |
CHECKREQS_DISK_BUILD="4G" |
169 |
check-reqs_pkg_setup |
170 |
} |
171 |
|
172 |
src_unpack() { |
173 |
unpack ${A} |
174 |
|
175 |
if ! [[ ${PV} =~ alpha|beta ]]; then |
176 |
linguas |
177 |
for X in "${linguas[@]}"; do |
178 |
xpi_unpack "${P}-${X}.xpi" |
179 |
done |
180 |
fi |
181 |
} |
182 |
|
183 |
src_prepare() { |
184 |
# Apply our Thunderbird patchset |
185 |
EPATCH_SUFFIX="patch" \ |
186 |
EPATCH_FORCE="yes" \ |
187 |
epatch "${WORKDIR}/thunderbird" |
188 |
|
189 |
# Apply our patchset from firefox to thunderbird as well |
190 |
pushd "${S}"/mozilla &>/dev/null || die |
191 |
EPATCH_SUFFIX="patch" \ |
192 |
EPATCH_FORCE="yes" \ |
193 |
epatch "${WORKDIR}/firefox" |
194 |
popd &>/dev/null || die |
195 |
|
196 |
if use lightning ; then |
197 |
einfo "Fix lightning version to match upstream release" |
198 |
einfo |
199 |
sed -i -e 's:1.0b8pre:1.0:' "${S}"/calendar/sunbird/config/version.txt \ |
200 |
|| die "Failed to correct lightning version" |
201 |
fi |
202 |
|
203 |
if use crypt ; then |
204 |
mv "${WORKDIR}"/enigmail "${S}"/mailnews/extensions/enigmail |
205 |
# Ensure enigmail can find its scripts for gpg |
206 |
epatch "${FILESDIR}"/enigmail-1.3.3-bug373733.patch |
207 |
cd "${S}"/mailnews/extensions/enigmail || die |
208 |
./makemake -r 2&> /dev/null |
209 |
sed -i -e 's:@srcdir@:${S}/mailnews/extensions/enigmail:' Makefile.in |
210 |
cd "${S}" |
211 |
fi |
212 |
|
213 |
#Fix compilation with curl-7.21.7 bug 376027 |
214 |
sed -e '/#include <curl\/types.h>/d' \ |
215 |
-i "${S}"/mozilla/toolkit/crashreporter/google-breakpad/src/common/linux/http_upload.cc \ |
216 |
-i "${S}"/mozilla/toolkit/crashreporter/google-breakpad/src/common/linux/libcurl_wrapper.cc \ |
217 |
-i "${S}"/mozilla/config/system-headers \ |
218 |
-i "${S}"/mozilla/js/src/config/system-headers || die "Sed failed" |
219 |
|
220 |
# Allow user to apply any additional patches without modifing ebuild |
221 |
epatch_user |
222 |
|
223 |
eautoreconf |
224 |
} |
225 |
|
226 |
src_configure() { |
227 |
declare MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" |
228 |
MEXTENSIONS="default" |
229 |
|
230 |
#################################### |
231 |
# |
232 |
# mozconfig, CFLAGS and CXXFLAGS setup |
233 |
# |
234 |
#################################### |
235 |
|
236 |
mozconfig_init |
237 |
mozconfig_config |
238 |
|
239 |
# It doesn't compile on alpha without this LDFLAGS |
240 |
use alpha && append-ldflags "-Wl,--no-relax" |
241 |
|
242 |
mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}" |
243 |
mozconfig_annotate '' --with-default-mozilla-five-home="${EPREFIX}${MOZILLA_FIVE_HOME}" |
244 |
mozconfig_annotate '' --with-user-appdir=.thunderbird |
245 |
mozconfig_annotate '' --with-system-png |
246 |
mozconfig_annotate '' --enable-system-ffi |
247 |
|
248 |
# Use enable features |
249 |
mozconfig_use_enable lightning calendar |
250 |
mozconfig_use_enable gconf |
251 |
|
252 |
# Bug #72667 |
253 |
if use mozdom; then |
254 |
MEXTENSIONS="${MEXTENSIONS},inspector" |
255 |
fi |
256 |
|
257 |
# Finalize and report settings |
258 |
mozconfig_final |
259 |
|
260 |
#################################### |
261 |
# |
262 |
# Configure and build |
263 |
# |
264 |
#################################### |
265 |
|
266 |
# Disable no-print-directory |
267 |
MAKEOPTS=${MAKEOPTS/--no-print-directory/} |
268 |
|
269 |
if [[ $(gcc-major-version) -lt 4 ]]; then |
270 |
append-cxxflags -fno-stack-protector |
271 |
elif [[ $(gcc-major-version) -gt 4 || $(gcc-minor-version) -gt 3 ]]; then |
272 |
if use amd64 || use x86; then |
273 |
append-flags -mno-avx |
274 |
fi |
275 |
fi |
276 |
|
277 |
CPPFLAGS="${CPPFLAGS}" \ |
278 |
CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \ |
279 |
econf || die |
280 |
} |
281 |
|
282 |
src_compile() { |
283 |
emake || die |
284 |
|
285 |
# Only build enigmail extension if crypt enabled. |
286 |
if use crypt ; then |
287 |
emake -C "${S}"/mailnews/extensions/enigmail || die "make enigmail failed" |
288 |
emake -C "${S}"/mailnews/extensions/enigmail xpi || die "make enigmail xpi failed" |
289 |
fi |
290 |
} |
291 |
|
292 |
src_install() { |
293 |
declare MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" |
294 |
declare emid |
295 |
|
296 |
# Pax mark xpcshell for hardened support, only used for startupcache creation. |
297 |
pax-mark m "${S}"/mozilla/dist/bin/xpcshell |
298 |
|
299 |
emake DESTDIR="${D}" install || die "emake install failed" |
300 |
|
301 |
if ! use bindist; then |
302 |
newicon "${S}"/other-licenses/branding/thunderbird/content/icon48.png thunderbird-icon.png |
303 |
domenu "${FILESDIR}"/icon/${PN}.desktop |
304 |
else |
305 |
newicon "${S}"/mail/branding/unofficial/content/icon48.png thunderbird-icon-unbranded.png |
306 |
newmenu "${FILESDIR}"/icon/${PN}-unbranded.desktop \ |
307 |
${PN}.desktop |
308 |
|
309 |
sed -i -e "s:Mozilla\ Thunderbird:Lanikai:g" \ |
310 |
"${ED}"/usr/share/applications/${PN}.desktop |
311 |
fi |
312 |
|
313 |
if use crypt ; then |
314 |
cd "${T}" || die |
315 |
unzip "${S}"/mozilla/dist/bin/enigmail*.xpi install.rdf || die |
316 |
emid=$(sed -n '/<em:id>/!d; s/.*\({.*}\).*/\1/; p; q' install.rdf) |
317 |
|
318 |
dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} || die |
319 |
cd "${D}"${MOZILLA_FIVE_HOME}/extensions/${emid} || die |
320 |
unzip "${S}"/mozilla/dist/bin/enigmail*.xpi || die |
321 |
fi |
322 |
|
323 |
if use lightning ; then |
324 |
emid="{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}" |
325 |
dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} |
326 |
cd "${ED}"${MOZILLA_FIVE_HOME}/extensions/${emid} |
327 |
unzip "${S}"/mozilla/dist/xpi-stage/gdata-provider.xpi |
328 |
|
329 |
emid="calendar-timezones@×××××××.org" |
330 |
dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} |
331 |
cd "${ED}"${MOZILLA_FIVE_HOME}/extensions/${emid} |
332 |
unzip "${S}"/mozilla/dist/xpi-stage/calendar-timezones.xpi |
333 |
|
334 |
emid="{e2fda1a4-762b-4020-b5ad-a41df1933103}" |
335 |
dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} |
336 |
cd "${ED}"${MOZILLA_FIVE_HOME}/extensions/${emid} |
337 |
unzip "${S}"/mozilla/dist/xpi-stage/lightning.xpi |
338 |
|
339 |
# Fix mimetype so it shows up as a calendar application in GNOME 3 |
340 |
# This requires that the .desktop file was already installed earlier |
341 |
sed -e "s:^\(MimeType=\):\1text/calendar;:" \ |
342 |
-e "s:^\(Categories=\):\1Calendar;:" \ |
343 |
-i "${ED}"/usr/share/applications/${PN}.desktop |
344 |
fi |
345 |
|
346 |
if ! [[ ${PV} =~ alpha|beta ]]; then |
347 |
linguas |
348 |
for X in "${linguas[@]}"; do |
349 |
xpi_install "${WORKDIR}/${P}-${X}" |
350 |
done |
351 |
fi |
352 |
|
353 |
pax-mark m "${ED}"/${MOZILLA_FIVE_HOME}/thunderbird-bin |
354 |
|
355 |
# Enable very specific settings for thunderbird-3 |
356 |
cp "${FILESDIR}"/thunderbird-gentoo-default-prefs-1.js-1 \ |
357 |
"${ED}/${MOZILLA_FIVE_HOME}/defaults/pref/all-gentoo.js" || \ |
358 |
die "failed to cp thunderbird-gentoo-default-prefs.js" |
359 |
|
360 |
share_plugins_dir |
361 |
} |
362 |
|
363 |
pkg_postinst() { |
364 |
elog |
365 |
elog "If you are experience problems with plugins please issue the" |
366 |
elog "following command : rm \${HOME}/.thunderbird/*/extensions.sqlite ," |
367 |
elog "then restart thunderbird" |
368 |
} |