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: thunderbird-24.1.0-r1.ebuild ChangeLog thunderbird-24.0-r1.ebuild
Date: Mon, 04 Nov 2013 13:41:25
Message-Id: 20131104134114.D49DA2004B@flycatcher.gentoo.org
1 anarchy 13/11/04 13:41:14
2
3 Modified: ChangeLog
4 Added: thunderbird-24.1.0-r1.ebuild
5 Removed: thunderbird-24.0-r1.ebuild
6 Log:
7 New esr release, security update
8
9 (Portage version: 2.2.7/cvs/Linux x86_64, signed Manifest commit with key 0xB4D088B4)
10
11 Revision Changes Path
12 1.250 mail-client/thunderbird/ChangeLog
13
14 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/ChangeLog?rev=1.250&view=markup
15 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/ChangeLog?rev=1.250&content-type=text/plain
16 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/ChangeLog?r1=1.249&r2=1.250
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/mail-client/thunderbird/ChangeLog,v
21 retrieving revision 1.249
22 retrieving revision 1.250
23 diff -u -r1.249 -r1.250
24 --- ChangeLog 26 Oct 2013 02:15:17 -0000 1.249
25 +++ ChangeLog 4 Nov 2013 13:41:14 -0000 1.250
26 @@ -1,6 +1,13 @@
27 # ChangeLog for mail-client/thunderbird
28 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
29 -# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/ChangeLog,v 1.249 2013/10/26 02:15:17 anarchy Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/ChangeLog,v 1.250 2013/11/04 13:41:14 anarchy Exp $
31 +
32 +*thunderbird-24.1.0-r1 (04 Nov 2013)
33 +
34 + 04 Nov 2013; Jory A. Pratt <anarchy@g.o> +thunderbird-24.1.0-r1.ebuild,
35 + -files/enigmail_mailnews_extensions_genxpi.patch,
36 + -files/moz24-drop-Wl-build-id.patch, -thunderbird-24.0-r1.ebuild:
37 + New esr release, security update
38
39 26 Oct 2013; Jory A. Pratt <anarchy@g.o> thunderbird-24.0-r1.ebuild:
40 ia64 support, bug #487250
41
42
43
44 1.1 mail-client/thunderbird/thunderbird-24.1.0-r1.ebuild
45
46 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/thunderbird-24.1.0-r1.ebuild?rev=1.1&view=markup
47 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/mail-client/thunderbird/thunderbird-24.1.0-r1.ebuild?rev=1.1&content-type=text/plain
48
49 Index: thunderbird-24.1.0-r1.ebuild
50 ===================================================================
51 # Copyright 1999-2013 Gentoo Foundation
52 # Distributed under the terms of the GNU General Public License v2
53 # $Header: /var/cvsroot/gentoo-x86/mail-client/thunderbird/thunderbird-24.1.0-r1.ebuild,v 1.1 2013/11/04 13:41:14 anarchy Exp $
54
55 EAPI="3"
56 WANT_AUTOCONF="2.1"
57 MOZ_ESR=""
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.6"
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-3 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-24.0-patches-0.1"
91 PATCHFF="firefox-24.0-patches-0.6"
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 http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar.xz
98 http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCHFF}.tar.xz
99 http://dev.gentoo.org/~polynomial-c/mozilla/patchsets/${PATCH}.tar.xz"
100
101 ASM_DEPEND=">=dev-lang/yasm-1.1"
102
103 RDEPEND="
104 >=dev-libs/nss-3.15.1
105 >=dev-libs/nspr-4.10
106 >=dev-libs/glib-2.26:2
107 >=media-libs/mesa-7.10
108 >=media-libs/libpng-1.5.13[apng]
109 virtual/libffi
110 gstreamer? ( media-plugins/gst-plugins-meta:0.10[ffmpeg] )
111 pulseaudio? ( media-sound/pulseaudio )
112 system-cairo? ( >=x11-libs/cairo-1.12[X] )
113 system-icu? ( >=dev-libs/icu-0.51.1 )
114 system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
115 system-sqlite? ( >=dev-db/sqlite-3.7.17:3[secure-delete,debug=] )
116 >=media-libs/libvpx-1.0.0
117 kernel_linux? ( media-libs/alsa-lib )
118 selinux? ( sec-policy/selinux-thunderbird )
119 !x11-plugins/enigmail
120 crypt? ( || (
121 ( >=app-crypt/gnupg-2.0
122 || (
123 app-crypt/pinentry[gtk]
124 app-crypt/pinentry[qt4]
125 )
126 )
127 =app-crypt/gnupg-1.4*
128 ) )"
129
130 DEPEND="${RDEPEND}
131 >=sys-devel/binutils-2.16.1
132 virtual/pkgconfig
133 amd64? ( ${ASM_DEPEND}
134 virtual/opengl )
135 x86? ( ${ASM_DEPEND}
136 virtual/opengl )"
137
138 if [[ ${PV} =~ beta ]]; then
139 S="${WORKDIR}/comm-beta"
140 else
141 S="${WORKDIR}/comm-esr${PV%%.*}"
142 fi
143
144 pkg_setup() {
145 moz_pkgsetup
146
147 export MOZILLA_DIR="${S}/mozilla"
148
149 if ! use bindist ; then
150 elog "You are enabling official branding. You may not redistribute this build"
151 elog "to any users on your network or the internet. Doing so puts yourself into"
152 elog "a legal problem with Mozilla Foundation"
153 elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag"
154 elog
155 fi
156
157 # Ensure we have enough disk space to compile
158 CHECKREQS_DISK_BUILD="4G"
159 check-reqs_pkg_setup
160 }
161
162 src_unpack() {
163 unpack ${A}
164
165 # Unpack language packs
166 mozlinguas_src_unpack
167 }
168
169 src_prepare() {
170 # Apply our Thunderbird patchset
171 EPATCH_SUFFIX="patch" \
172 EPATCH_FORCE="yes" \
173 epatch "${WORKDIR}/thunderbird"
174
175 # Apply our patchset from firefox to thunderbird as well
176 pushd "${S}"/mozilla &>/dev/null || die
177 EPATCH_SUFFIX="patch" \
178 EPATCH_FORCE="yes" \
179 epatch "${WORKDIR}/firefox"
180 popd &>/dev/null || die
181
182 if use crypt ; then
183 mv "${WORKDIR}"/enigmail "${S}"/mailnews/extensions/enigmail
184 fi
185
186 # Ensure that are plugins dir is enabled as default
187 sed -i -e "s:/usr/lib/mozilla/plugins:/usr/lib/nsbrowser/plugins:" \
188 "${S}"/mozilla/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 32bit!"
189 sed -i -e "s:/usr/lib64/mozilla/plugins:/usr/lib64/nsbrowser/plugins:" \
190 "${S}"/mozilla/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 64bit!"
191
192 # Don't exit with error when some libs are missing which we have in
193 # system.
194 sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \
195 -i "${S}"/mail/installer/Makefile.in || die
196
197 # Don't error out when there's no files to be removed:
198 sed 's@\(xargs rm\)$@\1 -f@' \
199 -i "${S}"/mozilla/toolkit/mozapps/installer/packager.mk || die
200
201 # Shell scripts sometimes contain DOS line endings; bug 391889
202 grep -rlZ --include="*.sh" $'\r$' . |
203 while read -r -d $'\0' file ; do
204 einfo edos2unix "${file}"
205 edos2unix "${file}"
206 done
207
208 # Allow user to apply any additional patches without modifing ebuild
209 epatch_user
210
211 eautoreconf
212 # Ensure we run eautoreconf in mozilla to regenerate configure
213 cd "${S}"/mozilla
214 eautoconf
215 }
216
217 src_configure() {
218 declare MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
219 MEXTENSIONS="default"
220
221 ####################################
222 #
223 # mozconfig, CFLAGS and CXXFLAGS setup
224 #
225 ####################################
226
227 mozconfig_init
228 mozconfig_config
229
230 # It doesn't compile on alpha without this LDFLAGS
231 use alpha && append-ldflags "-Wl,--no-relax"
232
233 # We must force enable jemalloc 3 threw .mozconfig
234 echo "export MOZ_JEMALLOC=1" >> ${S}/.mozconfig
235
236 mozconfig_annotate '' --enable-jemalloc
237 mozconfig_annotate '' --enable-replace-malloc
238 mozconfig_annotate '' --prefix="${EPREFIX}"/usr
239 mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir)
240 mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
241 mozconfig_annotate '' --disable-gconf
242 mozconfig_annotate '' --disable-mailnews
243 mozconfig_annotate '' --with-system-png
244 mozconfig_annotate '' --enable-system-ffi
245
246 # Other ff-specific settings
247 mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME}
248 mozconfig_annotate '' --with-user-appdir=.thunderbird
249 mozconfig_annotate '' --target="${CTARGET:-${CHOST}}"
250 mozconfig_annotate '' --build="${CTARGET:-${CHOST}}"
251
252 # Use enable features
253 mozconfig_use_enable gstreamer
254 mozconfig_use_enable pulseaudio
255 mozconfig_use_enable system-cairo
256 mozconfig_use_enable system-sqlite
257 mozconfig_use_with system-jpeg
258 mozconfig_use_with system-icu
259 mozconfig_use_enable system-icu intl-api
260 mozconfig_use_enable lightning calendar
261 mozconfig_use_enable ldap
262 # Feature is know to cause problems on hardened
263 mozconfig_use_enable jit ion
264
265 # Bug #72667
266 if use mozdom; then
267 MEXTENSIONS="${MEXTENSIONS},inspector"
268 fi
269
270 # Use an objdir to keep things organized.
271 echo "mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/tbird" >> "${S}"/.mozconfig
272
273 # Finalize and report settings
274 mozconfig_final
275
276 ####################################
277 #
278 # Configure and build
279 #
280 ####################################
281
282 # Disable no-print-directory
283 MAKEOPTS=${MAKEOPTS/--no-print-directory/}
284
285 if [[ $(gcc-major-version) -lt 4 ]]; then
286 append-cxxflags -fno-stack-protector
287 elif [[ $(gcc-major-version) -gt 4 || $(gcc-minor-version) -gt 3 ]]; then
288 if use amd64 || use x86; then
289 append-flags -mno-avx
290 fi
291 fi
292 }
293
294 src_compile() {
295 CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
296 MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL}" \
297 emake -f client.mk || die "emake failed"
298
299 # Only build enigmail extension if crypt enabled.
300 if use crypt ; then
301 cd "${S}"/mailnews/extensions/enigmail || die
302 ./makemake -r 2&> /dev/null
303 cd "${S}"/tbird/mailnews/extensions/enigmail
304 emake || die "make enigmail failed"
305 emake xpi || die "make enigmail xpi failed"
306 fi
307 }
308
309 src_install() {
310 declare MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
311 DICTPATH="\"${EPREFIX}/usr/share/myspell\""
312
313 declare emid
314 local obj_dir="tbird"
315 cd "${S}/${obj_dir}"
316
317 # Copy our preference before omnijar is created.
318 cp "${FILESDIR}"/thunderbird-gentoo-default-prefs-1.js-1 \
319 "${S}/${obj_dir}/mozilla/dist/bin/defaults/pref/all-gentoo.js" || die
320
321 # Set default path to search for dictionaries.
322 echo "pref(\"spellchecker.dictionary_path\", ${DICTPATH});" \
323 >> "${S}/${obj_dir}/mozilla/dist/bin/defaults/pref/all-gentoo.js" || die
324
325 # Pax mark xpcshell for hardened support, only used for startupcache creation.
326 pax-mark m "${S}"/${obj_dir}/mozilla/dist/bin/xpcshell
327
328 MOZ_MAKE_FLAGS="${MAKEOPTS}" \
329 emake DESTDIR="${D}" install || die "emake install failed"
330
331 # Install language packs
332 mozlinguas_src_install
333
334 if ! use bindist; then
335 newicon "${S}"/other-licenses/branding/thunderbird/content/icon48.png thunderbird-icon.png
336 domenu "${FILESDIR}"/icon/${PN}.desktop
337 else
338 newicon "${S}"/mail/branding/aurora/content/icon48.png thunderbird-icon-unbranded.png
339 newmenu "${FILESDIR}"/icon/${PN}-unbranded.desktop \
340 ${PN}.desktop
341
342 sed -i -e "s:Mozilla\ Thunderbird:EarlyBird:g" \
343 "${ED}"/usr/share/applications/${PN}.desktop
344 fi
345
346 if use crypt ; then
347 cd "${T}" || die
348 unzip "${S}"/${obj_dir}/mozilla/dist/bin/enigmail*.xpi install.rdf || die
349 emid=$(sed -n '/<em:id>/!d; s/.*\({.*}\).*/\1/; p; q' install.rdf)
350
351 dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} || die
352 cd "${D}"${MOZILLA_FIVE_HOME}/extensions/${emid} || die
353 unzip "${S}"/${obj_dir}/mozilla/dist/bin/enigmail*.xpi || die
354 fi
355
356 if use lightning ; then
357 emid="{3550f703-e582-4d05-9a08-453d09bdfdc6}"
358 dodir ${MOZILLA_FIVE_HOME}/extensions/${emid}
359 cd "${ED}"${MOZILLA_FIVE_HOME}/extensions/${emid}
360 unzip "${S}"/${obj_dir}/mozilla/dist/xpi-stage/gdata-provider-*.xpi
361
362 emid="{e2fda1a4-762b-4020-b5ad-a41df1933103}"
363 dodir ${MOZILLA_FIVE_HOME}/extensions/${emid}
364 cd "${ED}"${MOZILLA_FIVE_HOME}/extensions/${emid}
365 unzip "${S}"/${obj_dir}/mozilla/dist/xpi-stage/lightning-*.xpi
366
367 # Fix mimetype so it shows up as a calendar application in GNOME 3
368 # This requires that the .desktop file was already installed earlier
369 sed -e "s:^\(MimeType=\):\1text/calendar;:" \
370 -e "s:^\(Categories=\):\1Calendar;:" \
371 -i "${ED}"/usr/share/applications/${PN}.desktop
372 fi
373
374 pax-mark m "${ED}"/${MOZILLA_FIVE_HOME}/{thunderbird-bin,thunderbird}
375
376 # Plugin-container needs to be pax-marked for hardened to ensure plugins such as flash
377 # continue to work as expected.
378 pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/plugin-container
379
380 if use minimal; then
381 rm -rf "${ED}"/usr/include "${ED}"${MOZILLA_FIVE_HOME}/{idl,include,lib,sdk} || \
382 die "Failed to remove sdk and headers"
383 fi
384 }
385
386 pkg_postinst() {
387 elog
388 elog "If you are experience problems with plugins please issue the"
389 elog "following command : rm \${HOME}/.thunderbird/*/extensions.sqlite ,"
390 elog "then restart thunderbird"
391 }