Gentoo Archives: gentoo-commits

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