Gentoo Archives: gentoo-commits

From: "Lars Wendler (polynomial-c)" <polynomial-c@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in www-client/firefox: ChangeLog firefox-10.0.5.ebuild firefox-10.0.3.ebuild
Date: Wed, 06 Jun 2012 14:43:42
Message-Id: 20120606144325.C6CA62004B@flycatcher.gentoo.org
1 polynomial-c 12/06/06 14:43:25
2
3 Modified: ChangeLog
4 Added: firefox-10.0.5.ebuild
5 Removed: firefox-10.0.3.ebuild
6 Log:
7 Security bump. Removed old.
8
9 (Portage version: 2.2.0_alpha110/cvs/Linux x86_64)
10
11 Revision Changes Path
12 1.158 www-client/firefox/ChangeLog
13
14 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/firefox/ChangeLog?rev=1.158&view=markup
15 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/firefox/ChangeLog?rev=1.158&content-type=text/plain
16 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/firefox/ChangeLog?r1=1.157&r2=1.158
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/www-client/firefox/ChangeLog,v
21 retrieving revision 1.157
22 retrieving revision 1.158
23 diff -u -r1.157 -r1.158
24 --- ChangeLog 6 Jun 2012 13:35:34 -0000 1.157
25 +++ ChangeLog 6 Jun 2012 14:43:25 -0000 1.158
26 @@ -1,6 +1,12 @@
27 # ChangeLog for www-client/firefox
28 # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
29 -# $Header: /var/cvsroot/gentoo-x86/www-client/firefox/ChangeLog,v 1.157 2012/06/06 13:35:34 ssuominen Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/www-client/firefox/ChangeLog,v 1.158 2012/06/06 14:43:25 polynomial-c Exp $
31 +
32 +*firefox-10.0.5 (06 Jun 2012)
33 +
34 + 06 Jun 2012; Lars Wendler <polynomial-c@g.o> -firefox-10.0.3.ebuild,
35 + +firefox-10.0.5.ebuild:
36 + Security bump. Removed old.
37
38 06 Jun 2012; Samuli Suominen <ssuominen@g.o>
39 -files/icon/firefox-1.5-unbranded.desktop, -files/icon/firefox-1.5.desktop,
40
41
42
43 1.1 www-client/firefox/firefox-10.0.5.ebuild
44
45 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/firefox/firefox-10.0.5.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/firefox/firefox-10.0.5.ebuild?rev=1.1&content-type=text/plain
47
48 Index: firefox-10.0.5.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/www-client/firefox/firefox-10.0.5.ebuild,v 1.1 2012/06/06 14:43:25 polynomial-c Exp $
53
54 EAPI="3"
55 VIRTUALX_REQUIRED="pgo"
56 WANT_AUTOCONF="2.1"
57 MOZ_ESR="1"
58
59 # This list can be updated with scripts/get_langs.sh from the mozilla overlay
60 MOZ_LANGS=(af ak ar as ast be bg bn-BD bn-IN br bs ca cs csb cy da de el en
61 en-GB en-US en-ZA eo es-AR es-CL es-ES es-MX et eu fa fi fr fy-NL ga-IE gd gl
62 gu-IN he hi-IN hr hu hy-AM id is it ja kk kn ko ku lg lt lv mai mk ml mr nb-NO
63 nl nn-NO nso or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq sr sv-SE ta ta-LK
64 te th tr uk vi zh-CN zh-TW zu)
65
66 # Convert the ebuild version to the upstream mozilla version, used by mozlinguas
67 MOZ_PV="${PV/_alpha/a}" # Handle alpha for SRC_URI
68 MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI
69 MOZ_PV="${MOZ_PV/_rc/rc}" # Handle rc for SRC_URI
70
71 if [[ ${MOZ_ESR} == 1 ]]; then
72 # ESR releases have slightly version numbers
73 MOZ_PV="${MOZ_PV}esr"
74 fi
75
76 # Changeset for alpha snapshot
77 CHANGESET="e56ecd8b3a68"
78 # Patch version
79 PATCH="${PN}-10.0-patches-0.8"
80 # Upstream ftp release URI that's used by mozlinguas.eclass
81 # We don't use the http mirror because it deletes old tarballs.
82 MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/"
83
84 inherit check-reqs flag-o-matic toolchain-funcs eutils gnome2-utils mozconfig-3 multilib pax-utils fdo-mime autotools python virtualx nsplugins mozlinguas
85
86 DESCRIPTION="Firefox Web Browser"
87 HOMEPAGE="http://www.mozilla.com/firefox"
88
89 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 -sparc ~x86 ~amd64-linux ~x86-linux"
90 SLOT="0"
91 LICENSE="|| ( MPL-1.1 GPL-2 LGPL-2.1 )"
92 IUSE="bindist +crashreporter +ipc +minimal pgo selinux system-sqlite +webm"
93
94 # More URIs appended below...
95 SRC_URI="${SRC_URI}
96 http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar.xz"
97
98 ASM_DEPEND=">=dev-lang/yasm-1.1"
99
100 # Mesa 7.10 needed for WebGL + bugfixes
101 RDEPEND="
102 >=sys-devel/binutils-2.16.1
103 >=dev-libs/nss-3.13.5
104 >=dev-libs/nspr-4.9.1
105 >=dev-libs/glib-2.26:2
106 >=media-libs/mesa-7.10
107 media-libs/libpng[apng]
108 virtual/libffi
109 system-sqlite? ( >=dev-db/sqlite-3.7.7.1[fts3,secure-delete,threadsafe,unlock-notify,debug=] )
110 webm? ( >=media-libs/libvpx-1.0.0
111 media-libs/alsa-lib )
112 crashreporter? ( net-misc/curl )
113 selinux? ( sec-policy/selinux-mozilla )"
114 # We don't use PYTHON_DEPEND/PYTHON_USE_WITH for some silly reason
115 DEPEND="${RDEPEND}
116 virtual/pkgconfig
117 pgo? (
118 =dev-lang/python-2*[sqlite]
119 >=sys-devel/gcc-4.5 )
120 webm? ( virtual/opengl
121 x86? ( ${ASM_DEPEND} )
122 amd64? ( ${ASM_DEPEND} ) )"
123
124 # No source releases for alpha|beta
125 if [[ ${PV} =~ alpha ]]; then
126 SRC_URI="${SRC_URI}
127 http://dev.gentoo.org/~anarchy/mozilla/firefox/firefox-${MOZ_PV}_${CHANGESET}.source.tar.bz2"
128 S="${WORKDIR}/mozilla-central"
129 elif [[ ${PV} =~ beta ]]; then
130 SRC_URI="${SRC_URI}
131 ${MOZ_FTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2"
132 S="${WORKDIR}/mozilla-beta"
133 else
134 SRC_URI="${SRC_URI}
135 ${MOZ_FTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2"
136 if [[ ${MOZ_ESR} == 1 ]]; then
137 S="${WORKDIR}/mozilla-esr${PV%%.*}"
138 else
139 S="${WORKDIR}/mozilla-release"
140 fi
141 fi
142
143 QA_PRESTRIPPED="usr/$(get_libdir)/${PN}/firefox"
144
145 pkg_setup() {
146 moz_pkgsetup
147
148 # Avoid PGO profiling problems due to enviroment leakage
149 # These should *always* be cleaned up anyway
150 unset DBUS_SESSION_BUS_ADDRESS \
151 DISPLAY \
152 ORBIT_SOCKETDIR \
153 SESSION_MANAGER \
154 XDG_SESSION_COOKIE \
155 XAUTHORITY
156
157 if ! use bindist; then
158 einfo
159 elog "You are enabling official branding. You may not redistribute this build"
160 elog "to any users on your network or the internet. Doing so puts yourself into"
161 elog "a legal problem with Mozilla Foundation"
162 elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag"
163 fi
164
165 if use pgo; then
166 einfo
167 ewarn "You will do a double build for profile guided optimization."
168 ewarn "This will result in your build taking at least twice as long as before."
169 fi
170
171 # Ensure we have enough disk space to compile
172 if use pgo || use debug || use test ; then
173 CHECKREQS_DISK_BUILD="8G"
174 else
175 CHECKREQS_DISK_BUILD="4G"
176 fi
177 check-reqs_pkg_setup
178 }
179
180 src_unpack() {
181 unpack ${A}
182
183 # Unpack language packs
184 mozlinguas_src_unpack
185 }
186
187 src_prepare() {
188 # Apply our patches
189 EPATCH_EXCLUDE="6012_fix_shlibsign.patch 6013_fix_abort_declaration.patch" \
190 EPATCH_SUFFIX="patch" \
191 EPATCH_FORCE="yes" \
192 epatch "${WORKDIR}/firefox"
193
194 # Allow user to apply any additional patches without modifing ebuild
195 epatch_user
196
197 # Enable gnomebreakpad
198 if use debug ; then
199 sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \
200 "${S}"/build/unix/run-mozilla.sh || die "sed failed!"
201 fi
202
203 # Disable gnomevfs extension
204 sed -i -e "s:gnomevfs::" "${S}/"browser/confvars.sh \
205 -e "s:gnomevfs::" "${S}/"xulrunner/confvars.sh \
206 || die "Failed to remove gnomevfs extension"
207
208 # Ensure that are plugins dir is enabled as default
209 sed -i -e "s:/usr/lib/mozilla/plugins:/usr/$(get_libdir)/nsbrowser/plugins:" \
210 "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path!"
211
212 # Fix sandbox violations during make clean, bug 372817
213 sed -e "s:\(/no-such-file\):${T}\1:g" \
214 -i "${S}"/config/rules.mk \
215 -i "${S}"/js/src/config/rules.mk \
216 -i "${S}"/nsprpub/configure{.in,} \
217 || die
218
219 #Fix compilation with curl-7.21.7 bug 376027
220 sed -e '/#include <curl\/types.h>/d' \
221 -i "${S}"/toolkit/crashreporter/google-breakpad/src/common/linux/http_upload.cc \
222 -i "${S}"/toolkit/crashreporter/google-breakpad/src/common/linux/libcurl_wrapper.cc \
223 -i "${S}"/config/system-headers \
224 -i "${S}"/js/src/config/system-headers || die "Sed failed"
225
226 eautoreconf
227 }
228
229 src_configure() {
230 MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
231 MEXTENSIONS="default"
232
233 ####################################
234 #
235 # mozconfig, CFLAGS and CXXFLAGS setup
236 #
237 ####################################
238
239 mozconfig_init
240 mozconfig_config
241
242 # It doesn't compile on alpha without this LDFLAGS
243 use alpha && append-ldflags "-Wl,--no-relax"
244
245 mozconfig_annotate '' --prefix="${EPREFIX}"/usr
246 mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir)
247 mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
248 mozconfig_annotate '' --disable-gconf
249 mozconfig_annotate '' --disable-mailnews
250 mozconfig_annotate '' --enable-canvas
251 mozconfig_annotate '' --enable-safe-browsing
252 mozconfig_annotate '' --with-system-png
253 mozconfig_annotate '' --enable-system-ffi
254
255 # Other ff-specific settings
256 mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME}
257 mozconfig_annotate '' --target="${CTARGET:-${CHOST}}"
258
259 # Allow for a proper pgo build
260 if use pgo; then
261 echo "mk_add_options PROFILE_GEN_SCRIPT='\$(PYTHON) \$(OBJDIR)/_profile/pgo/profileserver.py'" >> "${S}"/.mozconfig
262 fi
263
264 # Finalize and report settings
265 mozconfig_final
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
276 src_compile() {
277 if use pgo; then
278 addpredict /root
279 addpredict /etc/gconf
280 # Reset and cleanup environment variables used by GNOME/XDG
281 gnome2_environment_reset
282
283 # Firefox tries to use dri stuff when it's run, see bug 380283
284 shopt -s nullglob
285 cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
286 if test -n "${cards}"; then
287 # FOSS drivers are fine
288 addpredict "${cards}"
289 else
290 cards=$(echo -n /dev/ati/card* /dev/nvidiactl* | sed 's/ /:/g')
291 if test -n "${cards}"; then
292 # Binary drivers seem to cause access violations anyway, so
293 # let's use indirect rendering so that the device files aren't
294 # touched at all. See bug 394715.
295 export LIBGL_ALWAYS_INDIRECT=1
296 fi
297 fi
298 shopt -u nullglob
299
300 CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
301 MOZ_MAKE_FLAGS="${MAKEOPTS}" \
302 Xemake -f client.mk profiledbuild || die "Xemake failed"
303 else
304 CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
305 MOZ_MAKE_FLAGS="${MAKEOPTS}" \
306 emake -f client.mk || die "emake failed"
307 fi
308
309 }
310
311 src_install() {
312 MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
313
314 # MOZ_BUILD_ROOT, and hence OBJ_DIR change depending on arch, compiler, pgo, etc.
315 local obj_dir="$(echo */config.log)"
316 obj_dir="${obj_dir%/*}"
317 cd "${S}/${obj_dir}"
318
319 # Pax mark xpcshell for hardened support, only used for startupcache creation.
320 pax-mark m "${S}/${obj_dir}"/dist/bin/xpcshell
321
322 # Add our default prefs for firefox + xulrunner
323 cp "${FILESDIR}"/gentoo-default-prefs.js-1 \
324 "${S}/${obj_dir}/dist/bin/defaults/pref/all-gentoo.js" || die
325
326 MOZ_MAKE_FLAGS="${MAKEOPTS}" \
327 emake DESTDIR="${D}" install || die "emake install failed"
328
329 # Install language packs
330 mozlinguas_src_install
331
332 local size sizes icon_path icon name
333 if use bindist; then
334 sizes="16 32 48"
335 icon_path="${S}/browser/branding/aurora"
336 # Firefox's new rapid release cycle means no more codenames
337 # Let's just stick with this one...
338 icon="aurora"
339 name="Aurora"
340 else
341 sizes="16 22 24 32 256"
342 icon_path="${S}/browser/branding/official"
343 icon="${PN}"
344 name="Mozilla Firefox"
345 fi
346
347 # Install icons and .desktop for menu entry
348 for size in ${sizes}; do
349 insinto "/usr/share/icons/hicolor/${size}x${size}/apps"
350 newins "${icon_path}/default${size}.png" "${icon}.png" || die
351 done
352 # The 128x128 icon has a different name
353 insinto "/usr/share/icons/hicolor/128x128/apps"
354 newins "${icon_path}/mozicon128.png" "${icon}.png" || die
355 # Install a 48x48 icon into /usr/share/pixmaps for legacy DEs
356 newicon "${icon_path}/content/icon48.png" "${icon}.png" || die
357 newmenu "${FILESDIR}/icon/${PN}.desktop" "${PN}.desktop" || die
358 sed -i -e "s:@NAME@:${name}:" -e "s:@ICON@:${icon}:" \
359 "${ED}/usr/share/applications/${PN}.desktop" || die
360
361 # Add StartupNotify=true bug 237317
362 if use startup-notification ; then
363 echo "StartupNotify=true" >> "${ED}/usr/share/applications/${PN}.desktop"
364 fi
365
366 # Required in order to use plugins and even run firefox on hardened.
367 pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/{firefox,firefox-bin,plugin-container}
368
369 # Plugins dir
370 share_plugins_dir
371
372 if use minimal; then
373 rm -rf "${ED}"/usr/include "${ED}${MOZILLA_FIVE_HOME}"/{idl,include,lib,sdk} || \
374 die "Failed to remove sdk and headers"
375 fi
376
377 # very ugly hack to make firefox not sigbus on sparc
378 # FIXME: is this still needed??
379 use sparc && { sed -e 's/Firefox/FirefoxGentoo/g' \
380 -i "${ED}/${MOZILLA_FIVE_HOME}/application.ini" || \
381 die "sparc sed failed"; }
382 }
383
384 pkg_preinst() {
385 gnome2_icon_savelist
386 }
387
388 pkg_postinst() {
389 # Update mimedb for the new .desktop file
390 fdo-mime_desktop_database_update
391 gnome2_icon_cache_update
392 }
393
394 pkg_postrm() {
395 gnome2_icon_cache_update
396 }