Gentoo Archives: gentoo-commits

From: "Ian Stakenvicius (axs)" <axs@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in mail-client/thunderbird: thunderbird-31.0.ebuild ChangeLog
Date: Fri, 01 Aug 2014 16:34:20
Message-Id: 20140801163414.C6E382004E@flycatcher.gentoo.org
1 axs 14/08/01 16:34:13
2
3 Modified: ChangeLog
4 Added: thunderbird-31.0.ebuild
5 Log:
6 version bump
7
8 (Portage version: 2.2.8-r1/cvs/Linux x86_64, signed Manifest commit with key 2B6559ED)
9
10 Revision Changes Path
11 1.290 mail-client/thunderbird/ChangeLog
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/ChangeLog?rev=1.290&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/ChangeLog?rev=1.290&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/ChangeLog?r1=1.289&r2=1.290
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/mail-client/thunderbird/ChangeLog,v
20 retrieving revision 1.289
21 retrieving revision 1.290
22 diff -u -r1.289 -r1.290
23 --- ChangeLog 25 Jul 2014 14:22:58 -0000 1.289
24 +++ ChangeLog 1 Aug 2014 16:34:13 -0000 1.290
25 @@ -1,6 +1,12 @@
26 # ChangeLog for mail-client/thunderbird
27 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/ChangeLog,v 1.289 2014/07/25 14:22:58 axs Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/ChangeLog,v 1.290 2014/08/01 16:34:13 axs Exp $
30 +
31 +*thunderbird-31.0 (01 Aug 2014)
32 +
33 + 01 Aug 2014; Ian Stakenvicius (_AxS_) <axs@g.o>
34 + +thunderbird-31.0.ebuild:
35 + version bump
36
37 25 Jul 2014; Ian Stakenvicius (_AxS_) <axs@g.o>
38 thunderbird-24.7.0.ebuild:
39
40
41
42 1.1 mail-client/thunderbird/thunderbird-31.0.ebuild
43
44 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/thunderbird-31.0.ebuild?rev=1.1&view=markup
45 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/thunderbird-31.0.ebuild?rev=1.1&content-type=text/plain
46
47 Index: thunderbird-31.0.ebuild
48 ===================================================================
49 # Copyright 1999-2014 Gentoo Foundation
50 # Distributed under the terms of the GNU General Public License v2
51 # $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/thunderbird-31.0.ebuild,v 1.1 2014/08/01 16:34:13 axs Exp $
52
53 EAPI=5
54 WANT_AUTOCONF="2.1"
55 MOZ_ESR=""
56 MOZ_LIGHTNING_VER="3.3"
57 MOZ_LIGHTNING_GDATA_VER="2.6.3"
58
59 # This list can be updated using scripts/get_langs.sh from the mozilla overlay
60 MOZ_LANGS=(ar ast be bg bn-BD br ca cs da de el en en-GB en-US es-AR
61 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
62 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
63 zh-CN zh-TW )
64
65 # Convert the ebuild version to th firefox-24.0-patches-0.4.tar.xze upstream mozilla version, used by mozlinguas
66 MOZ_PV="${PV/_beta/b}"
67 # ESR releases have slightly version numbers
68 if [[ ${MOZ_ESR} == 1 ]]; then
69 MOZ_PV="${MOZ_PV}esr"
70 fi
71 MOZ_P="${PN}-${MOZ_PV}"
72
73 # Enigmail version
74 EMVER="1.7"
75 # Upstream ftp release URI that's used by mozlinguas.eclass
76 # We don't use the http mirror because it deletes old tarballs.
77 MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/"
78 MOZ_HTTP_URI="http://ftp.mozilla.org/pub/${PN}/releases/"
79
80 inherit flag-o-matic toolchain-funcs mozconfig-v4 makeedit multilib autotools pax-utils check-reqs nsplugins mozlinguas
81
82 DESCRIPTION="Thunderbird Mail Client"
83 HOMEPAGE="http://www.mozilla.com/en-US/thunderbird/"
84
85 KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
86 SLOT="0"
87 LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
88 IUSE="bindist crypt gstreamer +jit ldap +lightning +minimal mozdom pulseaudio selinux system-cairo system-icu system-jpeg system-sqlite"
89
90 PATCH="thunderbird-31.0-patches-0.1"
91 PATCHFF="firefox-31.0-patches-0.2"
92
93 SRC_URI="${SRC_URI}
94 ${MOZ_FTP_URI}${MOZ_PV}/source/${MOZ_P}.source.tar.bz2
95 ${MOZ_HTTP_URI}${MOZ_PV}/source/${MOZ_P}.source.tar.bz2
96 crypt? ( http://www.enigmail.net/download/source/enigmail-${EMVER}.tar.gz )
97 lightning? (
98 ${MOZ_HTTP_URI/${PN}/calendar/lightning}${MOZ_LIGHTNING_VER}/linux/lightning.xpi -> lightning-${MOZ_LIGHTNING_VER}.xpi
99 ${MOZ_HTTP_URI/${PN}/calendar/lightning}${MOZ_LIGHTNING_GDATA_VER}/linux/gdata-provider.xpi -> gdata-provider-${MOZ_LIGHTNING_GDATA_VER}.xpi
100 )
101 http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar.xz
102 http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCHFF}.tar.xz
103 http://dev.gentoo.org/~axs/distfiles/${PATCH}.tar.xz
104 http://dev.gentoo.org/~axs/distfiles/${PATCHFF}.tar.xz
105 http://dev.gentoo.org/~polynomial-c/mozilla/patchsets/${PATCH}.tar.xz"
106
107 ASM_DEPEND=">=dev-lang/yasm-1.1"
108
109 RDEPEND="
110 >=dev-libs/nss-3.16.2
111 >=dev-libs/nspr-4.10.6
112 >=dev-libs/glib-2.26:2
113 >=media-libs/mesa-7.10
114 >=media-libs/libpng-1.6.6[apng]
115 virtual/libffi
116 gstreamer? ( media-plugins/gst-plugins-meta:1.0[ffmpeg] )
117 pulseaudio? ( media-sound/pulseaudio )
118 system-cairo? ( >=x11-libs/cairo-1.12[X] )
119 system-icu? ( >=dev-libs/icu-51.1 )
120 system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
121 system-sqlite? ( >=dev-db/sqlite-3.8.3.1:3[secure-delete,debug=] )
122 >=media-libs/libvpx-1.0.0
123 selinux? ( sec-policy/selinux-thunderbird )
124 !x11-plugins/enigmail
125 crypt? ( || (
126 ( >=app-crypt/gnupg-2.0
127 || (
128 app-crypt/pinentry[gtk]
129 app-crypt/pinentry[qt4]
130 )
131 )
132 =app-crypt/gnupg-1.4*
133 ) )"
134
135 DEPEND="${RDEPEND}
136 >=sys-devel/binutils-2.16.1
137 virtual/pkgconfig
138 amd64? ( ${ASM_DEPEND}
139 virtual/opengl )
140 x86? ( ${ASM_DEPEND}
141 virtual/opengl )"
142
143 if [[ ${PV} =~ beta ]]; then
144 S="${WORKDIR}/comm-beta"
145 else
146 S="${WORKDIR}/comm-esr${PV%%.*}"
147 fi
148
149 BUILD_OBJ_DIR="${WORKDIR}/tbird"
150
151 pkg_setup() {
152 moz_pkgsetup
153
154 export MOZILLA_DIR="${S}/mozilla"
155
156 if ! use bindist ; then
157 elog "You are enabling official branding. You may not redistribute this build"
158 elog "to any users on your network or the internet. Doing so puts yourself into"
159 elog "a legal problem with Mozilla Foundation"
160 elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag"
161 elog
162 fi
163 }
164
165 pkg_pretend() {
166 # Ensure we have enough disk space to compile
167 CHECKREQS_DISK_BUILD="4G"
168 check-reqs_pkg_setup
169 }
170
171 src_unpack() {
172 unpack ${A}
173
174 # Unpack language packs
175 mozlinguas_src_unpack
176
177 # Unpack lightning for calendar locales
178 if use lightning ; then
179 xpi_unpack lightning-${MOZ_LIGHTNING_VER}.xpi
180 xpi_unpack gdata-provider-${MOZ_LIGHTNING_GDATA_VER}.xpi
181 fi
182 }
183
184 src_prepare() {
185 # Apply our Thunderbird patchset
186 EPATCH_SUFFIX="patch" \
187 EPATCH_FORCE="yes" \
188 epatch "${WORKDIR}/thunderbird"
189
190 # Apply our patchset from firefox to thunderbird as well
191 pushd "${S}"/mozilla &>/dev/null || die
192 EPATCH_SUFFIX="patch" \
193 EPATCH_FORCE="yes" \
194 epatch "${WORKDIR}/firefox"
195 popd &>/dev/null || die
196
197 # Ensure that are plugins dir is enabled as default
198 sed -i -e "s:/usr/lib/mozilla/plugins:/usr/lib/nsbrowser/plugins:" \
199 "${S}"/mozilla/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 32bit!"
200 sed -i -e "s:/usr/lib64/mozilla/plugins:/usr/lib64/nsbrowser/plugins:" \
201 "${S}"/mozilla/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 64bit!"
202
203 # Don't exit with error when some libs are missing which we have in
204 # system.
205 sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \
206 -i "${S}"/mail/installer/Makefile.in || die
207
208 # Don't error out when there's no files to be removed:
209 sed 's@\(xargs rm\)$@\1 -f@' \
210 -i "${S}"/mozilla/toolkit/mozapps/installer/packager.mk || die
211
212 # Shell scripts sometimes contain DOS line endings; bug 391889
213 grep -rlZ --include="*.sh" $'\r$' . |
214 while read -r -d $'\0' file ; do
215 einfo edos2unix "${file}"
216 edos2unix "${file}"
217 done
218
219 # Confirm the version of lightning being grabbed for langpacks is the same
220 # as that used in thunderbird
221 local THIS_MOZ_LIGHTNING_VER=$(python "${S}"/calendar/lightning/build/makeversion.py ${PV})
222 if [[ ${MOZ_LIGHTNING_VER} != ${THIS_MOZ_LIGHTNING_VER} ]]; then
223 eqawarn "The version of lightning used for localization differs from the version"
224 eqawarn "in thunderbird. Please update MOZ_LIGHTNING_VER in the ebuild from ${MOZ_LIGHTNING_VER}"
225 eqawarn "to ${THIS_MOZ_LIGHTNING_VER}"
226 fi
227
228 # Allow user to apply any additional patches without modifing ebuild
229 epatch_user
230
231 eautoreconf
232 # Ensure we run eautoreconf in mozilla to regenerate configure
233 cd "${S}"/mozilla || die
234 eautoconf
235 cd "${S}"/mozilla/js/src || die
236 eautoconf
237 }
238
239 src_configure() {
240 declare MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
241 MEXTENSIONS="default"
242
243 ####################################
244 #
245 # mozconfig, CFLAGS and CXXFLAGS setup
246 #
247 ####################################
248
249 mozconfig_init
250 mozconfig_config
251
252 # It doesn't compile on alpha without this LDFLAGS
253 use alpha && append-ldflags "-Wl,--no-relax"
254
255 # We must force enable jemalloc 3 threw .mozconfig
256 echo "export MOZ_JEMALLOC=1" >> ${S}/.mozconfig
257
258 mozconfig_annotate '' --enable-jemalloc
259 mozconfig_annotate '' --enable-replace-malloc
260 mozconfig_annotate '' --prefix="${EPREFIX}"/usr
261 mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir)
262 mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
263 mozconfig_annotate '' --disable-gconf
264 mozconfig_annotate '' --disable-mailnews
265 mozconfig_annotate '' --with-system-png
266 mozconfig_annotate '' --enable-system-ffi
267
268 # Other ff-specific settings
269 mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME}
270 mozconfig_annotate '' --with-user-appdir=.thunderbird
271 mozconfig_annotate '' --target="${CTARGET:-${CHOST}}"
272 mozconfig_annotate '' --build="${CTARGET:-${CHOST}}"
273
274 # Use enable features
275 if use gstreamer ; then
276 mozconfig_annotate '' --enable-gstreamer=1.0
277 else
278 mozconfig_annotate '' --disable-gstreamer
279 fi
280 mozconfig_use_enable pulseaudio
281 mozconfig_use_enable system-cairo
282 mozconfig_use_enable system-sqlite
283 mozconfig_use_with system-jpeg
284 mozconfig_use_with system-icu
285 mozconfig_use_enable system-icu intl-api
286 mozconfig_use_enable lightning calendar
287 mozconfig_use_enable ldap
288
289 # Bug #72667
290 if use mozdom; then
291 MEXTENSIONS="${MEXTENSIONS},inspector"
292 fi
293
294 # Use an objdir to keep things organized.
295 echo "mk_add_options MOZ_OBJDIR=${BUILD_OBJ_DIR}" >> "${S}"/.mozconfig
296
297 # Finalize and report settings
298 mozconfig_final
299
300 ####################################
301 #
302 # Configure and build
303 #
304 ####################################
305
306 # Disable no-print-directory
307 MAKEOPTS=${MAKEOPTS/--no-print-directory/}
308
309 if [[ $(gcc-major-version) -lt 4 ]]; then
310 append-cxxflags -fno-stack-protector
311 elif [[ $(gcc-major-version) -gt 4 || $(gcc-minor-version) -gt 3 ]]; then
312 if use amd64 || use x86; then
313 append-flags -mno-avx
314 fi
315 fi
316
317 if use crypt; then
318 pushd "${WORKDIR}"/enigmail &>/dev/null ||die
319 econf
320 popd &>/dev/null ||die
321 fi
322 }
323
324 src_compile() {
325 mkdir -p "${BUILD_OBJ_DIR}" && cd "${BUILD_OBJ_DIR}" || die
326
327 CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
328 MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL}" \
329 emake -f "${S}"/client.mk
330
331 # Only build enigmail extension if crypt enabled.
332 if use crypt ; then
333 einfo "Building enigmail"
334 pushd "${WORKDIR}"/enigmail &>/dev/null || die
335 emake -j1
336 emake -j1 xpi
337 popd &>/dev/null || die
338 fi
339 }
340
341 src_install() {
342 declare MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
343 DICTPATH="\"${EPREFIX}/usr/share/myspell\""
344
345 declare emid
346 cd "${BUILD_OBJ_DIR}" || die
347
348 # Copy our preference before omnijar is created.
349 cp "${FILESDIR}"/thunderbird-gentoo-default-prefs-1.js-1 \
350 "${BUILD_OBJ_DIR}/mozilla/dist/bin/defaults/pref/all-gentoo.js" \
351 || die
352
353 # Set default path to search for dictionaries.
354 echo "pref(\"spellchecker.dictionary_path\", ${DICTPATH});" \
355 >> "${BUILD_OBJ_DIR}/mozilla/dist/bin/defaults/pref/all-gentoo.js" \
356 || die
357
358 # Pax mark xpcshell for hardened support, only used for startupcache creation.
359 pax-mark m "${BUILD_OBJ_DIR}"/mozilla/dist/bin/xpcshell
360
361 MOZ_MAKE_FLAGS="${MAKEOPTS}" \
362 emake DESTDIR="${D}" install
363
364 # Install language packs
365 mozlinguas_src_install
366
367 if ! use bindist; then
368 newicon "${S}"/other-licenses/branding/thunderbird/content/icon48.png thunderbird-icon.png
369 domenu "${FILESDIR}"/icon/${PN}.desktop
370 else
371 newicon "${S}"/mail/branding/aurora/content/icon48.png thunderbird-icon-unbranded.png
372 newmenu "${FILESDIR}"/icon/${PN}-unbranded.desktop \
373 ${PN}.desktop
374
375 sed -i -e "s:Mozilla\ Thunderbird:EarlyBird:g" \
376 "${ED}"/usr/share/applications/${PN}.desktop
377 fi
378
379 if use crypt ; then
380 local enigmail_xpipath="${WORKDIR}/enigmail/build"
381 cd "${T}" || die
382 unzip "${enigmail_xpipath}"/enigmail*.xpi install.rdf || die
383 emid=$(sed -n '/<em:id>/!d; s/.*\({.*}\).*/\1/; p; q' install.rdf)
384
385 dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} || die
386 cd "${D}"${MOZILLA_FIVE_HOME}/extensions/${emid} || die
387 unzip "${enigmail_xpipath}"/enigmail*.xpi || die
388 fi
389
390 if use lightning ; then
391 local l c
392 mozlinguas_export
393
394 emid="{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}"
395 dodir ${MOZILLA_FIVE_HOME}/extensions/${emid}
396 cd "${ED}"${MOZILLA_FIVE_HOME}/extensions/${emid}
397 unzip "${BUILD_OBJ_DIR}"/mozilla/dist/xpi-stage/gdata-provider-*.xpi
398 # Install locales for gdata-provider -- each locale is a directory tree
399 insinto ${MOZILLA_FIVE_HOME}/extensions/${emid}/chrome
400 cd "${WORKDIR}"/gdata-provider-${MOZ_LIGHTNING_GDATA_VER}/chrome
401 for l in "${mozlinguas[@]}"; do if [[ -d gdata-provider-${l} ]]; then
402 doins -r gdata-provider-${l}
403 echo "locale gdata-provider ${l} chrome/gdata-provider-${l}/locale/${l}/" \
404 >> "${ED}"/${MOZILLA_FIVE_HOME}/extensions/${emid}/chrome.manifest \
405 || die "Error adding gdata-provider-${l} to chrome.manifest"
406 else
407 ewarn "Sorry, but lightning gdata-provider in ${P} does not support the ${l} locale"
408 fi; done
409
410 emid="{e2fda1a4-762b-4020-b5ad-a41df1933103}"
411 dodir ${MOZILLA_FIVE_HOME}/extensions/${emid}
412 cd "${ED}"${MOZILLA_FIVE_HOME}/extensions/${emid} || die
413 unzip "${BUILD_OBJ_DIR}"/mozilla/dist/xpi-stage/lightning-*.xpi \
414 || die
415 # Install locales for lightning - each locale is a jar file
416 insinto ${MOZILLA_FIVE_HOME}/extensions/${emid}/chrome
417 cd "${WORKDIR}"/lightning-${MOZ_LIGHTNING_VER}/chrome || die
418 for l in "${mozlinguas[@]}"; do if [[ -e calendar-${l}.jar ]]; then
419 for c in calendar lightning; do
420 doins ${c}-${l}.jar
421 echo "locale ${c} $l jar:chrome/${c}-${l}.jar!/locale/${l}/${c}/" \
422 >> "${ED}"/${MOZILLA_FIVE_HOME}/extensions/${emid}/chrome.manifest \
423 || die "Error adding ${c}-${l} to chrome.manifest"
424 done
425 else
426 ewarn "Sorry, but lightning calendar in ${P} does not support the ${l} locale"
427 fi; done
428
429 # Fix mimetype so it shows up as a calendar application in GNOME 3
430 # This requires that the .desktop file was already installed earlier
431 sed -e "s:^\(MimeType=\):\1text/calendar;:" \
432 -e "s:^\(Categories=\):\1Calendar;:" \
433 -i "${ED}"/usr/share/applications/${PN}.desktop || die
434 fi
435
436 pax-mark m "${ED}"/${MOZILLA_FIVE_HOME}/{thunderbird-bin,thunderbird}
437
438 # Plugin-container needs to be pax-marked for hardened to ensure plugins such as flash
439 # continue to work as expected.
440 pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/plugin-container
441
442 if use minimal; then
443 rm -r "${ED}"/usr/include "${ED}"${MOZILLA_FIVE_HOME}/{idl,include,lib,sdk} || \
444 die "Failed to remove sdk and headers"
445 fi
446 }
447
448 pkg_postinst() {
449 if use crypt && has_version "app-admin/eselect-pinentry"; then
450 local peimpl=$(eselect --brief --colour=no pinentry show)
451 case "${peimpl}" in
452 *gtk*|*qt*) ;;
453 *) ewarn "The pinentry front-end currently selected is not one supported by thunderbird."
454 ewarn "You may be prompted for your password in an inaccessible shell!!"
455 ewarn "Please use 'eselect pinentry' to select either the gtk or qt front-end"
456 ;;
457 esac
458 fi
459 elog
460 elog "If you experience problems with plugins please issue the"
461 elog "following command : rm \${HOME}/.thunderbird/*/extensions.sqlite ,"
462 elog "then restart thunderbird"
463 }