1 |
anarchy 12/09/01 23:29:58 |
2 |
|
3 |
Modified: ChangeLog |
4 |
Added: thunderbird-10.0.7.ebuild thunderbird-15.0.ebuild |
5 |
Log: |
6 |
Security/Version Bump |
7 |
|
8 |
(Portage version: 2.1.11.12/cvs/Linux x86_64) |
9 |
|
10 |
Revision Changes Path |
11 |
1.164 mail-client/thunderbird/ChangeLog |
12 |
|
13 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/ChangeLog?rev=1.164&view=markup |
14 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/ChangeLog?rev=1.164&content-type=text/plain |
15 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/ChangeLog?r1=1.163&r2=1.164 |
16 |
|
17 |
Index: ChangeLog |
18 |
=================================================================== |
19 |
RCS file: /var/cvsroot/gentoo-x86/mail-client/thunderbird/ChangeLog,v |
20 |
retrieving revision 1.163 |
21 |
retrieving revision 1.164 |
22 |
diff -u -r1.163 -r1.164 |
23 |
--- ChangeLog 25 Aug 2012 07:08:37 -0000 1.163 |
24 |
+++ ChangeLog 1 Sep 2012 23:29:58 -0000 1.164 |
25 |
@@ -1,6 +1,13 @@ |
26 |
# ChangeLog for mail-client/thunderbird |
27 |
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 |
28 |
-# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/ChangeLog,v 1.163 2012/08/25 07:08:37 xmw Exp $ |
29 |
+# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/ChangeLog,v 1.164 2012/09/01 23:29:58 anarchy Exp $ |
30 |
+ |
31 |
+*thunderbird-15.0 (01 Sep 2012) |
32 |
+*thunderbird-10.0.7 (01 Sep 2012) |
33 |
+ |
34 |
+ 01 Sep 2012; <anarchy@g.o> +thunderbird-10.0.7.ebuild, |
35 |
+ +thunderbird-15.0.ebuild: |
36 |
+ Security/Version bump |
37 |
|
38 |
25 Aug 2012; Michael Weber <xmw@g.o> thunderbird-10.0.6.ebuild: |
39 |
ppc stable (bug 427224) |
40 |
|
41 |
|
42 |
|
43 |
1.1 mail-client/thunderbird/thunderbird-10.0.7.ebuild |
44 |
|
45 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/thunderbird-10.0.7.ebuild?rev=1.1&view=markup |
46 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/thunderbird-10.0.7.ebuild?rev=1.1&content-type=text/plain |
47 |
|
48 |
Index: thunderbird-10.0.7.ebuild |
49 |
=================================================================== |
50 |
# Copyright 1999-2012 Gentoo Foundation |
51 |
# Distributed under the terms of the GNU General Public License v2 |
52 |
# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/thunderbird-10.0.7.ebuild,v 1.1 2012/09/01 23:29:58 anarchy Exp $ |
53 |
|
54 |
EAPI="3" |
55 |
WANT_AUTOCONF="2.1" |
56 |
MOZ_ESR="1" |
57 |
|
58 |
# This list can be updated using scripts/get_langs.sh from the mozilla overlay |
59 |
MOZ_LANGS=(ar ast be bg bn-BD br ca cs da de el en en-GB en-US es-AR es-ES et eu fi |
60 |
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 pt-PT |
61 |
rm ro ru si sk sl sq sr sv-SE ta-LK tr uk vi zh-CN zh-TW) |
62 |
|
63 |
# Convert the ebuild version to the upstream mozilla version, used by mozlinguas |
64 |
MOZ_PV="${PV/_beta/b}" |
65 |
# ESR releases have slightly version numbers |
66 |
if [[ ${MOZ_ESR} == 1 ]]; then |
67 |
MOZ_PV="${MOZ_PV}esr" |
68 |
fi |
69 |
MOZ_P="${PN}-${MOZ_PV}" |
70 |
|
71 |
# Enigmail version |
72 |
EMVER="1.3.5" |
73 |
# Upstream ftp release URI that's used by mozlinguas.eclass |
74 |
# We don't use the http mirror because it deletes old tarballs. |
75 |
MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/" |
76 |
|
77 |
inherit flag-o-matic toolchain-funcs mozconfig-3 makeedit multilib autotools pax-utils python check-reqs nsplugins mozlinguas |
78 |
|
79 |
DESCRIPTION="Thunderbird Mail Client" |
80 |
HOMEPAGE="http://www.mozilla.com/en-US/thunderbird/" |
81 |
|
82 |
KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux" |
83 |
SLOT="0" |
84 |
LICENSE="MPL-1.1 GPL-2 LGPL-2.1" |
85 |
IUSE="bindist gconf +crypt +ipc +lightning +minimal mozdom +webm selinux" |
86 |
|
87 |
PATCH="thunderbird-10.0-patches-0.1" |
88 |
PATCHFF="firefox-10.0-patches-0.9" |
89 |
|
90 |
SRC_URI="${SRC_URI} |
91 |
${MOZ_FTP_URI}${MOZ_PV}/source/${MOZ_P}.source.tar.bz2 |
92 |
crypt? ( http://www.mozilla-enigmail.org/download/source/enigmail-${EMVER}.tar.gz ) |
93 |
http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar.xz |
94 |
http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCHFF}.tar.xz" |
95 |
|
96 |
ASM_DEPEND=">=dev-lang/yasm-1.1" |
97 |
|
98 |
RDEPEND=">=sys-devel/binutils-2.16.1 |
99 |
>=dev-libs/nss-3.13.6 |
100 |
>=dev-libs/nspr-4.9.2 |
101 |
>=dev-libs/glib-2.26 |
102 |
gconf? ( >=gnome-base/gconf-1.2.1:2 ) |
103 |
>=media-libs/libpng-1.5.9[apng] |
104 |
>=x11-libs/cairo-1.10 |
105 |
>=x11-libs/pango-1.14.0 |
106 |
>=x11-libs/gtk+-2.14 |
107 |
webm? ( >=media-libs/libvpx-1.0.0 |
108 |
media-libs/alsa-lib ) |
109 |
virtual/libffi |
110 |
!x11-plugins/enigmail |
111 |
system-sqlite? ( >=dev-db/sqlite-3.7.7.1[fts3,secure-delete,unlock-notify,debug=] ) |
112 |
selinux? ( sec-policy/selinux-thunderbird ) |
113 |
crypt? ( || ( |
114 |
( >=app-crypt/gnupg-2.0 |
115 |
|| ( |
116 |
app-crypt/pinentry[gtk] |
117 |
app-crypt/pinentry[qt4] |
118 |
) |
119 |
) |
120 |
=app-crypt/gnupg-1.4* |
121 |
) )" |
122 |
|
123 |
DEPEND="${RDEPEND} |
124 |
virtual/pkgconfig |
125 |
webm? ( x86? ( ${ASM_DEPEND} ) |
126 |
amd64? ( ${ASM_DEPEND} ) )" |
127 |
|
128 |
if [[ ${MOZ_ESR} == 1 ]]; then |
129 |
S="${WORKDIR}/comm-esr${PV%%.*}" |
130 |
else |
131 |
S="${WORKDIR}/comm-release" |
132 |
fi |
133 |
|
134 |
pkg_setup() { |
135 |
moz_pkgsetup |
136 |
|
137 |
export MOZILLA_DIR="${S}/mozilla" |
138 |
|
139 |
if ! use bindist ; then |
140 |
elog "You are enabling official branding. You may not redistribute this build" |
141 |
elog "to any users on your network or the internet. Doing so puts yourself into" |
142 |
elog "a legal problem with Mozilla Foundation" |
143 |
elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag" |
144 |
elog |
145 |
fi |
146 |
|
147 |
# Ensure we have enough disk space to compile |
148 |
CHECKREQS_DISK_BUILD="4G" |
149 |
check-reqs_pkg_setup |
150 |
} |
151 |
|
152 |
src_unpack() { |
153 |
unpack ${A} |
154 |
|
155 |
# Unpack language packs |
156 |
mozlinguas_src_unpack |
157 |
} |
158 |
|
159 |
src_prepare() { |
160 |
# Apply our Thunderbird patchset |
161 |
EPATCH_SUFFIX="patch" \ |
162 |
EPATCH_FORCE="yes" \ |
163 |
epatch "${WORKDIR}/thunderbird" |
164 |
|
165 |
# Apply our patchset from firefox to thunderbird as well |
166 |
pushd "${S}"/mozilla &>/dev/null || die |
167 |
EPATCH_EXCLUDE="6012_fix_shlibsign.patch 6013_fix_abort_declaration.patch" \ |
168 |
EPATCH_SUFFIX="patch" \ |
169 |
EPATCH_FORCE="yes" \ |
170 |
epatch "${WORKDIR}/firefox" |
171 |
popd &>/dev/null || die |
172 |
|
173 |
if use crypt ; then |
174 |
mv "${WORKDIR}"/enigmail "${S}"/mailnews/extensions/enigmail |
175 |
cd "${S}" |
176 |
fi |
177 |
|
178 |
#Fix compilation with curl-7.21.7 bug 376027 |
179 |
sed -e '/#include <curl\/types.h>/d' \ |
180 |
-i "${S}"/mozilla/toolkit/crashreporter/google-breakpad/src/common/linux/http_upload.cc \ |
181 |
-i "${S}"/mozilla/toolkit/crashreporter/google-breakpad/src/common/linux/libcurl_wrapper.cc \ |
182 |
-i "${S}"/mozilla/config/system-headers \ |
183 |
-i "${S}"/mozilla/js/src/config/system-headers || die "Sed failed" |
184 |
|
185 |
# Shell scripts sometimes contain DOS line endings; bug 391889 |
186 |
grep -rlZ --include="*.sh" $'\r$' . | |
187 |
while read -r -d $'\0' file ; do |
188 |
einfo edos2unix "${file}" |
189 |
edos2unix "${file}" |
190 |
done |
191 |
|
192 |
# Allow user to apply any additional patches without modifing ebuild |
193 |
epatch_user |
194 |
|
195 |
eautoreconf |
196 |
cd "${S}"/mozilla |
197 |
eautoconf |
198 |
} |
199 |
|
200 |
src_configure() { |
201 |
declare MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" |
202 |
MEXTENSIONS="default" |
203 |
|
204 |
#################################### |
205 |
# |
206 |
# mozconfig, CFLAGS and CXXFLAGS setup |
207 |
# |
208 |
#################################### |
209 |
|
210 |
mozconfig_init |
211 |
mozconfig_config |
212 |
|
213 |
# It doesn't compile on alpha without this LDFLAGS |
214 |
use alpha && append-ldflags "-Wl,--no-relax" |
215 |
|
216 |
mozconfig_annotate '' --prefix="${EPREFIX}"/usr |
217 |
mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir) |
218 |
mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}" |
219 |
mozconfig_annotate '' --with-default-mozilla-five-home="${EPREFIX}${MOZILLA_FIVE_HOME}" |
220 |
mozconfig_annotate '' --with-user-appdir=.thunderbird |
221 |
mozconfig_annotate '' --with-system-png |
222 |
mozconfig_annotate '' --enable-system-ffi |
223 |
mozconfig_annotate '' --target="${CTARGET:-${CHOST}}" |
224 |
mozconfig_annotate 'regression' --disable-tracejit |
225 |
|
226 |
# Use enable features |
227 |
mozconfig_use_enable lightning calendar |
228 |
mozconfig_use_enable gconf |
229 |
|
230 |
# Bug #72667 |
231 |
if use mozdom; then |
232 |
MEXTENSIONS="${MEXTENSIONS},inspector" |
233 |
fi |
234 |
|
235 |
# Use an objdir to keep things organized. |
236 |
echo "mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/tbird" >> "${S}"/.mozconfig |
237 |
|
238 |
# Finalize and report settings |
239 |
mozconfig_final |
240 |
|
241 |
#################################### |
242 |
# |
243 |
# Configure and build |
244 |
# |
245 |
#################################### |
246 |
|
247 |
# Disable no-print-directory |
248 |
MAKEOPTS=${MAKEOPTS/--no-print-directory/} |
249 |
|
250 |
if [[ $(gcc-major-version) -lt 4 ]]; then |
251 |
append-cxxflags -fno-stack-protector |
252 |
elif [[ $(gcc-major-version) -gt 4 || $(gcc-minor-version) -gt 3 ]]; then |
253 |
if use amd64 || use x86; then |
254 |
append-flags -mno-avx |
255 |
fi |
256 |
fi |
257 |
} |
258 |
|
259 |
src_compile() { |
260 |
CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \ |
261 |
MOZ_MAKE_FLAGS="${MAKEOPTS}" \ |
262 |
emake -f client.mk || die |
263 |
|
264 |
# Only build enigmail extension if crypt enabled. |
265 |
if use crypt ; then |
266 |
cd "${S}"/mailnews/extensions/enigmail || die |
267 |
./makemake -r 2&> /dev/null |
268 |
cd "${S}"/tbird/mailnews/extensions/enigmail |
269 |
emake || die "make enigmail failed" |
270 |
emake xpi || die "make enigmail xpi failed" |
271 |
fi |
272 |
} |
273 |
|
274 |
src_install() { |
275 |
declare MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" |
276 |
declare emid |
277 |
local obj_dir="tbird" |
278 |
cd "${S}/${obj_dir}" |
279 |
|
280 |
# Copy our preference before omnijar is created. |
281 |
cp "${FILESDIR}"/thunderbird-gentoo-default-prefs-1.js-1 \ |
282 |
"${S}/${obj_dir}/mozilla/dist/bin/defaults/pref/all-gentoo.js" || die |
283 |
|
284 |
# Pax mark xpcshell for hardened support, only used for startupcache creation. |
285 |
pax-mark m "${S}"/${obj_dir}/mozilla/dist/bin/xpcshell |
286 |
|
287 |
emake DESTDIR="${D}" install || die "emake install failed" |
288 |
|
289 |
# Install language packs |
290 |
mozlinguas_src_install |
291 |
|
292 |
if ! use bindist; then |
293 |
newicon "${S}"/other-licenses/branding/thunderbird/content/icon48.png thunderbird-icon.png |
294 |
domenu "${FILESDIR}"/icon/${PN}.desktop |
295 |
else |
296 |
newicon "${S}"/mail/branding/aurora/content/icon48.png thunderbird-icon-unbranded.png |
297 |
newmenu "${FILESDIR}"/icon/${PN}-unbranded.desktop \ |
298 |
${PN}.desktop |
299 |
|
300 |
sed -i -e "s:Mozilla\ Thunderbird:Lanikai:g" \ |
301 |
"${ED}"/usr/share/applications/${PN}.desktop |
302 |
fi |
303 |
|
304 |
if use crypt ; then |
305 |
cd "${T}" || die |
306 |
unzip "${S}"/${obj_dir}/mozilla/dist/bin/enigmail*.xpi install.rdf || die |
307 |
emid=$(sed -n '/<em:id>/!d; s/.*\({.*}\).*/\1/; p; q' install.rdf) |
308 |
|
309 |
dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} || die |
310 |
cd "${D}"${MOZILLA_FIVE_HOME}/extensions/${emid} || die |
311 |
unzip "${S}"/${obj_dir}/mozilla/dist/bin/enigmail*.xpi || die |
312 |
fi |
313 |
|
314 |
if use lightning ; then |
315 |
emid="{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}" |
316 |
dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} |
317 |
cd "${ED}"${MOZILLA_FIVE_HOME}/extensions/${emid} |
318 |
unzip "${S}"/${obj_dir}/mozilla/dist/xpi-stage/gdata-provider.xpi |
319 |
|
320 |
emid="calendar-timezones@×××××××.org" |
321 |
dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} |
322 |
cd "${ED}"${MOZILLA_FIVE_HOME}/extensions/${emid} |
323 |
unzip "${S}"/${obj_dir}/mozilla/dist/xpi-stage/calendar-timezones.xpi |
324 |
|
325 |
emid="{e2fda1a4-762b-4020-b5ad-a41df1933103}" |
326 |
dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} |
327 |
cd "${ED}"${MOZILLA_FIVE_HOME}/extensions/${emid} |
328 |
unzip "${S}"/${obj_dir}/mozilla/dist/xpi-stage/lightning.xpi |
329 |
|
330 |
# Fix mimetype so it shows up as a calendar application in GNOME 3 |
331 |
# This requires that the .desktop file was already installed earlier |
332 |
sed -e "s:^\(MimeType=\):\1text/calendar;:" \ |
333 |
-e "s:^\(Categories=\):\1Calendar;:" \ |
334 |
-i "${ED}"/usr/share/applications/${PN}.desktop |
335 |
fi |
336 |
|
337 |
pax-mark m "${ED}"/${MOZILLA_FIVE_HOME}/thunderbird-bin |
338 |
|
339 |
share_plugins_dir |
340 |
|
341 |
if use minimal; then |
342 |
rm -rf "${ED}"/usr/include "${ED}${MOZILLA_FIVE_HOME}"/{idl,include,lib,sdk} || \ |
343 |
die "Failed to remove sdk and headers" |
344 |
fi |
345 |
} |
346 |
|
347 |
pkg_postinst() { |
348 |
elog |
349 |
elog "If you are experience problems with plugins please issue the" |
350 |
elog "following command : rm \${HOME}/.thunderbird/*/extensions.sqlite ," |
351 |
elog "then restart thunderbird" |
352 |
} |
353 |
|
354 |
|
355 |
|
356 |
1.1 mail-client/thunderbird/thunderbird-15.0.ebuild |
357 |
|
358 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/thunderbird-15.0.ebuild?rev=1.1&view=markup |
359 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/thunderbird-15.0.ebuild?rev=1.1&content-type=text/plain |
360 |
|
361 |
Index: thunderbird-15.0.ebuild |
362 |
=================================================================== |
363 |
# Copyright 1999-2012 Gentoo Foundation |
364 |
# Distributed under the terms of the GNU General Public License v2 |
365 |
# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/thunderbird-15.0.ebuild,v 1.1 2012/09/01 23:29:58 anarchy Exp $ |
366 |
|
367 |
EAPI="3" |
368 |
WANT_AUTOCONF="2.1" |
369 |
MOZ_ESR="" |
370 |
|
371 |
# This list can be updated using scripts/get_langs.sh from the mozilla overlay |
372 |
MOZ_LANGS=(ar ast be bg bn-BD br ca cs da de el en en-GB en-US es-AR |
373 |
es-ES et eu fi fr fy-NL ga-IE gd gl he hr hu hy-AM id is it ja ko lt nb-NO |
374 |
nl nn-NO pa-IN pl pt-BR pt-PT rm ro ru si sk sl sq sr sv-SE ta-LK tr uk vi |
375 |
zh-CN zh-TW ) |
376 |
|
377 |
# Convert the ebuild version to the upstream mozilla version, used by mozlinguas |
378 |
MOZ_PV="${PV/_beta/b}" |
379 |
# ESR releases have slightly version numbers |
380 |
if [[ ${MOZ_ESR} == 1 ]]; then |
381 |
MOZ_PV="${MOZ_PV}esr" |
382 |
fi |
383 |
MOZ_P="${PN}-${MOZ_PV}" |
384 |
|
385 |
# Enigmail version |
386 |
EMVER="1.4.4" |
387 |
# Upstream ftp release URI that's used by mozlinguas.eclass |
388 |
# We don't use the http mirror because it deletes old tarballs. |
389 |
MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/" |
390 |
|
391 |
inherit flag-o-matic toolchain-funcs mozconfig-3 makeedit multilib autotools pax-utils python check-reqs nsplugins mozlinguas |
392 |
|
393 |
DESCRIPTION="Thunderbird Mail Client" |
394 |
HOMEPAGE="http://www.mozilla.com/en-US/thunderbird/" |
395 |
|
396 |
KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux" |
397 |
SLOT="0" |
398 |
LICENSE="MPL-2.0 GPL-2 LGPL-2.1" |
399 |
IUSE="bindist gconf +crypt +ipc +jit +lightning +minimal mozdom +webm selinux" |
400 |
|
401 |
PATCH="thunderbird-13.0-patches-0.1" |
402 |
PATCHFF="firefox-15.0-patches-0.2" |
403 |
|
404 |
SRC_URI="${SRC_URI} |
405 |
${MOZ_FTP_URI}${MOZ_PV}/source/${MOZ_P}.source.tar.bz2 |
406 |
crypt? ( http://www.mozilla-enigmail.org/download/source/enigmail-${EMVER}.tar.gz ) |
407 |
http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar.xz |
408 |
http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCHFF}.tar.xz |
409 |
http://dev.gentoo.org/~nirbheek/mozilla/patchsets/${PATCHFF}.tar.xz" |
410 |
|
411 |
ASM_DEPEND=">=dev-lang/yasm-1.1" |
412 |
|
413 |
RDEPEND=">=sys-devel/binutils-2.16.1 |
414 |
>=dev-libs/nss-3.13.6 |
415 |
>=dev-libs/nspr-4.9.2 |
416 |
>=dev-libs/glib-2.26 |
417 |
gconf? ( >=gnome-base/gconf-1.2.1:2 ) |
418 |
>=media-libs/libpng-1.5.9[apng] |
419 |
>=x11-libs/cairo-1.10 |
420 |
>=x11-libs/pango-1.14.0 |
421 |
>=x11-libs/gtk+-2.14 |
422 |
webm? ( >=media-libs/libvpx-1.0.0 |
423 |
kernel_linux? ( media-libs/alsa-lib ) ) |
424 |
virtual/libffi |
425 |
!x11-plugins/enigmail |
426 |
system-sqlite? ( >=dev-db/sqlite-3.7.10[fts3,secure-delete,threadsafe,unlock-notify,debug=] ) |
427 |
selinux? ( sec-policy/selinux-thunderbird ) |
428 |
crypt? ( || ( |
429 |
( >=app-crypt/gnupg-2.0 |
430 |
|| ( |
431 |
app-crypt/pinentry[gtk] |
432 |
app-crypt/pinentry[qt4] |
433 |
) |
434 |
) |
435 |
=app-crypt/gnupg-1.4* |
436 |
) )" |
437 |
|
438 |
DEPEND="${RDEPEND} |
439 |
!elibc_glibc? ( dev-libs/libexecinfo ) |
440 |
virtual/pkgconfig |
441 |
webm? ( x86? ( ${ASM_DEPEND} ) |
442 |
amd64? ( ${ASM_DEPEND} ) |
443 |
virtual/opengl )" |
444 |
|
445 |
if [[ ${PV} =~ beta ]]; then |
446 |
S="${WORKDIR}/comm-beta" |
447 |
elif [[ ${MOZ_ESR} == 1 ]]; then |
448 |
S="${WORKDIR}/comm-esr${PV%%.*}" |
449 |
else |
450 |
S="${WORKDIR}/comm-release" |
451 |
fi |
452 |
|
453 |
pkg_setup() { |
454 |
moz_pkgsetup |
455 |
|
456 |
export MOZILLA_DIR="${S}/mozilla" |
457 |
|
458 |
if ! use bindist ; then |
459 |
elog "You are enabling official branding. You may not redistribute this build" |
460 |
elog "to any users on your network or the internet. Doing so puts yourself into" |
461 |
elog "a legal problem with Mozilla Foundation" |
462 |
elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag" |
463 |
elog |
464 |
fi |
465 |
|
466 |
# Ensure we have enough disk space to compile |
467 |
CHECKREQS_DISK_BUILD="4G" |
468 |
check-reqs_pkg_setup |
469 |
} |
470 |
|
471 |
src_unpack() { |
472 |
unpack ${A} |
473 |
|
474 |
# Unpack language packs |
475 |
mozlinguas_src_unpack |
476 |
} |
477 |
|
478 |
src_prepare() { |
479 |
# Apply our Thunderbird patchset |
480 |
EPATCH_SUFFIX="patch" \ |
481 |
EPATCH_FORCE="yes" \ |
482 |
epatch "${WORKDIR}/thunderbird" |
483 |
|
484 |
# Apply our patchset from firefox to thunderbird as well |
485 |
pushd "${S}"/mozilla &>/dev/null || die |
486 |
EPATCH_SUFFIX="patch" \ |
487 |
EPATCH_FORCE="yes" \ |
488 |
epatch "${WORKDIR}/firefox" |
489 |
popd &>/dev/null || die |
490 |
|
491 |
if use crypt ; then |
492 |
mv "${WORKDIR}"/enigmail "${S}"/mailnews/extensions/enigmail |
493 |
cd "${S}" |
494 |
fi |
495 |
|
496 |
# Disable gnomevfs extension |
497 |
sed -i -e "s:gnomevfs::" "${S}/"mozilla/browser/confvars.sh \ |
498 |
-e "s:gnomevfs::" "${S}/"mozilla/xulrunner/confvars.sh \ |
499 |
|| die "Failed to remove gnomevfs extension" |
500 |
|
501 |
#Fix compilation with curl-7.21.7 bug 376027 |
502 |
sed -e '/#include <curl\/types.h>/d' \ |
503 |
-i "${S}"/mozilla/toolkit/crashreporter/google-breakpad/src/common/linux/http_upload.cc \ |
504 |
-i "${S}"/mozilla/toolkit/crashreporter/google-breakpad/src/common/linux/libcurl_wrapper.cc \ |
505 |
-i "${S}"/mozilla/config/system-headers \ |
506 |
-i "${S}"/mozilla/js/src/config/system-headers || die "Sed failed" |
507 |
|
508 |
# Don't error out when there's no files to be removed: |
509 |
sed 's@\(xargs rm\)$@\1 -f@' \ |
510 |
-i "${S}"/mozilla/toolkit/mozapps/installer/packager.mk || die |
511 |
|
512 |
# Shell scripts sometimes contain DOS line endings; bug 391889 |
513 |
grep -rlZ --include="*.sh" $'\r$' . | |
514 |
while read -r -d $'\0' file ; do |
515 |
einfo edos2unix "${file}" |
516 |
edos2unix "${file}" |
517 |
done |
518 |
|
519 |
# Allow user to apply any additional patches without modifing ebuild |
520 |
epatch_user |
521 |
|
522 |
eautoreconf |
523 |
# Ensure we run eautoreconf in mozilla to regenerate configure |
524 |
cd "${S}"/mozilla |
525 |
eautoconf |
526 |
} |
527 |
|
528 |
src_configure() { |
529 |
declare MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" |
530 |
MEXTENSIONS="default" |
531 |
|
532 |
#################################### |
533 |
# |
534 |
# mozconfig, CFLAGS and CXXFLAGS setup |
535 |
# |
536 |
#################################### |
537 |
|
538 |
mozconfig_init |
539 |
mozconfig_config |
540 |
|
541 |
# It doesn't compile on alpha without this LDFLAGS |
542 |
use alpha && append-ldflags "-Wl,--no-relax" |
543 |
|
544 |
mozconfig_annotate '' --prefix="${EPREFIX}"/usr |
545 |
mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir) |
546 |
mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}" |
547 |
mozconfig_annotate '' --with-default-mozilla-five-home="${EPREFIX}${MOZILLA_FIVE_HOME}" |
548 |
mozconfig_annotate '' --with-user-appdir=.thunderbird |
549 |
mozconfig_annotate '' --with-system-png |
550 |
mozconfig_annotate '' --enable-system-ffi |
551 |
mozconfig_annotate '' --target="${CTARGET:-${CHOST}}" |
552 |
|
553 |
# Use enable features |
554 |
mozconfig_use_enable lightning calendar |
555 |
mozconfig_use_enable gconf |
556 |
# Both methodjit and tracejit conflict with PaX |
557 |
mozconfig_use_enable jit methodjit |
558 |
mozconfig_use_enable jit tracejit |
559 |
|
560 |
# Bug #72667 |
561 |
if use mozdom; then |
562 |
MEXTENSIONS="${MEXTENSIONS},inspector" |
563 |
fi |
564 |
|
565 |
# Use an objdir to keep things organized. |
566 |
echo "mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/tbird" >> "${S}"/.mozconfig |
567 |
|
568 |
# Finalize and report settings |
569 |
mozconfig_final |
570 |
|
571 |
#################################### |
572 |
# |
573 |
# Configure and build |
574 |
# |
575 |
#################################### |
576 |
|
577 |
# Disable no-print-directory |
578 |
MAKEOPTS=${MAKEOPTS/--no-print-directory/} |
579 |
|
580 |
if [[ $(gcc-major-version) -lt 4 ]]; then |
581 |
append-cxxflags -fno-stack-protector |
582 |
elif [[ $(gcc-major-version) -gt 4 || $(gcc-minor-version) -gt 3 ]]; then |
583 |
if use amd64 || use x86; then |
584 |
append-flags -mno-avx |
585 |
fi |
586 |
fi |
587 |
} |
588 |
|
589 |
src_compile() { |
590 |
CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \ |
591 |
MOZ_MAKE_FLAGS="${MAKEOPTS}" \ |
592 |
emake -f client.mk || die |
593 |
|
594 |
# Only build enigmail extension if crypt enabled. |
595 |
if use crypt ; then |
596 |
cd "${S}"/mailnews/extensions/enigmail || die |
597 |
./makemake -r 2&> /dev/null |
598 |
cd "${S}"/tbird/mailnews/extensions/enigmail |
599 |
emake || die "make enigmail failed" |
600 |
emake xpi || die "make enigmail xpi failed" |
601 |
fi |
602 |
} |
603 |
|
604 |
src_install() { |
605 |
declare MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" |
606 |
declare emid |
607 |
local obj_dir="tbird" |
608 |
cd "${S}/${obj_dir}" |
609 |
|
610 |
# Copy our preference before omnijar is created. |
611 |
cp "${FILESDIR}"/thunderbird-gentoo-default-prefs-1.js-1 \ |
612 |
"${S}/${obj_dir}/mozilla/dist/bin/defaults/pref/all-gentoo.js" || die |
613 |
|
614 |
# Without methodjit and tracejit there's no conflict with PaX |
615 |
if use jit; then |
616 |
# Pax mark xpcshell for hardened support, only used for startupcache creation. |
617 |
pax-mark m "${S}"/${obj_dir}/mozilla/dist/bin/xpcshell |
618 |
fi |
619 |
|
620 |
emake DESTDIR="${D}" install || die "emake install failed" |
621 |
|
622 |
# Install language packs |
623 |
mozlinguas_src_install |
624 |
|
625 |
if ! use bindist; then |
626 |
newicon "${S}"/other-licenses/branding/thunderbird/content/icon48.png thunderbird-icon.png |
627 |
domenu "${FILESDIR}"/icon/${PN}.desktop |
628 |
else |
629 |
newicon "${S}"/mail/branding/aurora/content/icon48.png thunderbird-icon-unbranded.png |
630 |
newmenu "${FILESDIR}"/icon/${PN}-unbranded.desktop \ |
631 |
${PN}.desktop |
632 |
|
633 |
sed -i -e "s:Mozilla\ Thunderbird:EarlyBird:g" \ |
634 |
"${ED}"/usr/share/applications/${PN}.desktop |
635 |
fi |
636 |
|
637 |
if use crypt ; then |
638 |
cd "${T}" || die |
639 |
unzip "${S}"/${obj_dir}/mozilla/dist/bin/enigmail*.xpi install.rdf || die |
640 |
emid=$(sed -n '/<em:id>/!d; s/.*\({.*}\).*/\1/; p; q' install.rdf) |
641 |
|
642 |
dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} || die |
643 |
cd "${D}"${MOZILLA_FIVE_HOME}/extensions/${emid} || die |
644 |
unzip "${S}"/${obj_dir}/mozilla/dist/bin/enigmail*.xpi || die |
645 |
fi |
646 |
|
647 |
if use lightning ; then |
648 |
emid="{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}" |
649 |
dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} |
650 |
cd "${ED}"${MOZILLA_FIVE_HOME}/extensions/${emid} |
651 |
unzip "${S}"/${obj_dir}/mozilla/dist/xpi-stage/gdata-provider.xpi |
652 |
|
653 |
emid="calendar-timezones@×××××××.org" |
654 |
dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} |
655 |
cd "${ED}"${MOZILLA_FIVE_HOME}/extensions/${emid} |
656 |
unzip "${S}"/${obj_dir}/mozilla/dist/xpi-stage/calendar-timezones.xpi |
657 |
|
658 |
emid="{e2fda1a4-762b-4020-b5ad-a41df1933103}" |
659 |
dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} |
660 |
cd "${ED}"${MOZILLA_FIVE_HOME}/extensions/${emid} |
661 |
unzip "${S}"/${obj_dir}/mozilla/dist/xpi-stage/lightning.xpi |
662 |
|
663 |
# Fix mimetype so it shows up as a calendar application in GNOME 3 |
664 |
# This requires that the .desktop file was already installed earlier |
665 |
sed -e "s:^\(MimeType=\):\1text/calendar;:" \ |
666 |
-e "s:^\(Categories=\):\1Calendar;:" \ |
667 |
-i "${ED}"/usr/share/applications/${PN}.desktop |
668 |
fi |
669 |
|
670 |
if use jit ; then |
671 |
pax-mark m "${ED}"/${MOZILLA_FIVE_HOME}/thunderbird-bin |
672 |
fi |
673 |
|
674 |
# Plugin-container needs to be pax-marked for hardened to ensure plugins such as flash |
675 |
# continue to work as expected. |
676 |
pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/plugin-container |
677 |
|
678 |
# Plugins dir |
679 |
share_plugins_dir |
680 |
|
681 |
if use minimal; then |
682 |
rm -rf "${ED}"/usr/include "${ED}${MOZILLA_FIVE_HOME}"/{idl,include,lib,sdk} || \ |
683 |
die "Failed to remove sdk and headers" |
684 |
fi |
685 |
} |
686 |
|
687 |
pkg_postinst() { |
688 |
elog |
689 |
elog "If you are experience problems with plugins please issue the" |
690 |
elog "following command : rm \${HOME}/.thunderbird/*/extensions.sqlite ," |
691 |
elog "then restart thunderbird" |
692 |
} |