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/icecat: ChangeLog icecat-9.0.1.ebuild icecat-7.0.1.ebuild icecat-7.0.1-r1.ebuild
Date: Tue, 03 Jan 2012 00:18:04
Message-Id: 20120103001754.849AC2004C@flycatcher.gentoo.org
1 polynomial-c 12/01/03 00:17:54
2
3 Modified: ChangeLog
4 Added: icecat-9.0.1.ebuild
5 Removed: icecat-7.0.1.ebuild icecat-7.0.1-r1.ebuild
6 Log:
7 Version bump. Removed old
8
9 (Portage version: 2.2.0_alpha84/cvs/Linux x86_64)
10
11 Revision Changes Path
12 1.108 www-client/icecat/ChangeLog
13
14 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/icecat/ChangeLog?rev=1.108&view=markup
15 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/icecat/ChangeLog?rev=1.108&content-type=text/plain
16 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/icecat/ChangeLog?r1=1.107&r2=1.108
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/www-client/icecat/ChangeLog,v
21 retrieving revision 1.107
22 retrieving revision 1.108
23 diff -u -r1.107 -r1.108
24 --- ChangeLog 13 Dec 2011 17:20:18 -0000 1.107
25 +++ ChangeLog 3 Jan 2012 00:17:54 -0000 1.108
26 @@ -1,6 +1,13 @@
27 # ChangeLog for www-client/icecat
28 -# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
29 -# $Header: /var/cvsroot/gentoo-x86/www-client/icecat/ChangeLog,v 1.107 2011/12/13 17:20:18 polynomial-c Exp $
30 +# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
31 +# $Header: /var/cvsroot/gentoo-x86/www-client/icecat/ChangeLog,v 1.108 2012/01/03 00:17:54 polynomial-c Exp $
32 +
33 +*icecat-9.0.1 (03 Jan 2012)
34 +
35 + 03 Jan 2012; Lars Wendler <polynomial-c@g.o>
36 + +files/gentoo-default-prefs.js-1, -icecat-7.0.1.ebuild,
37 + -icecat-7.0.1-r1.ebuild, +icecat-9.0.1.ebuild:
38 + Version bump. Removed old.
39
40 *icecat-7.0.1-r1 (13 Dec 2011)
41
42
43
44
45 1.1 www-client/icecat/icecat-9.0.1.ebuild
46
47 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/icecat/icecat-9.0.1.ebuild?rev=1.1&view=markup
48 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/www-client/icecat/icecat-9.0.1.ebuild?rev=1.1&content-type=text/plain
49
50 Index: icecat-9.0.1.ebuild
51 ===================================================================
52 # Copyright 1999-2012 Gentoo Foundation
53 # Distributed under the terms of the GNU General Public License v2
54 # $Header: /var/cvsroot/gentoo-x86/www-client/icecat/icecat-9.0.1.ebuild,v 1.1 2012/01/03 00:17:54 polynomial-c Exp $
55
56 EAPI="3"
57 VIRTUALX_REQUIRED="pgo"
58 WANT_AUTOCONF="2.1"
59
60 inherit check-reqs flag-o-matic toolchain-funcs eutils gnome2-utils mozconfig-3 multilib pax-utils fdo-mime autotools mozextension versionator python virtualx nsplugins
61
62 MAJ_FF_PV="$(get_version_component_range 1-2)" # 3.5, 3.6, 4.0, etc.
63 FF_PV="${PV/_alpha/a}" # Handle alpha for SRC_URI
64 FF_PV="${FF_PV/_beta/b}" # Handle beta for SRC_URI
65 FF_PV="${FF_PV/_rc/rc}" # Handle rc for SRC_URI
66 PATCH="firefox-9.0-patches-0.4"
67
68 DESCRIPTION="GNU project's edition of Mozilla Firefox"
69 HOMEPAGE="http://www.gnu.org/software/gnuzilla/"
70
71 KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
72 SLOT="0"
73 LICENSE="|| ( MPL-1.1 GPL-2 LGPL-2.1 )"
74 IUSE="+crashreporter +ipc pgo system-sqlite +webm"
75
76 # More URIs appended below...
77 SRC_URI="mirror://gnu/gnuzilla/${FF_PV}/${PN}-${FF_PV}.tar.xz
78 http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar.xz"
79 LANGPACK_URI="http://gnuzilla.gnu.org/download/langpacks/${FF_PV}"
80
81 ASM_DEPEND=">=dev-lang/yasm-1.1"
82
83 # Mesa 7.10 needed for WebGL + bugfixes
84 RDEPEND="
85 >=sys-devel/binutils-2.16.1
86 >=dev-libs/nss-3.13.1
87 >=dev-libs/nspr-4.8.8
88 >=dev-libs/glib-2.26:2
89 >=media-libs/mesa-7.10
90 media-libs/libpng[apng]
91 virtual/libffi
92 system-sqlite? ( >=dev-db/sqlite-3.7.7.1[fts3,secure-delete,unlock-notify,debug=] )
93 webm? ( media-libs/libvpx
94 media-libs/alsa-lib )
95 crashreporter? ( net-misc/curl )"
96 # We don't use PYTHON_DEPEND/PYTHON_USE_WITH for some silly reason
97 DEPEND="${RDEPEND}
98 dev-util/pkgconfig
99 pgo? (
100 =dev-lang/python-2*[sqlite]
101 >=sys-devel/gcc-4.5 )
102 webm? ( x86? ( ${ASM_DEPEND} )
103 amd64? ( ${ASM_DEPEND} ) )"
104
105 # No language packs for alphas
106 if ! [[ ${PV} =~ alpha|beta ]]; then
107 # This list can be updated with scripts/get_langs.sh from mozilla overlay
108 LANGS=(af ak ar ast be bg bn-BD bn-IN br bs ca cs cy da de
109 el en eo es-ES et eu fa fi fr fy-NL ga-IE gd gl gu-IN
110 he hi-IN hr hu hy-AM id is it ja kk kn ko ku lg lt lv mai mk
111 ml mr nb-NO nl nn-NO nso or pa-IN pl pt-PT rm ro ru si sk sl
112 son sq sr sv-SE ta ta-LK te th tr uk vi zu)
113
114 for X in "${LANGS[@]}" ; do
115 # en and en_US are handled internally
116 if [[ ${X} != en ]] && [[ ${X} != en-US ]]; then
117 SRC_URI="${SRC_URI}
118 linguas_${X/-/_}? ( ${LANGPACK_URI}/${X}.xpi -> ${P}-${X}.xpi )"
119 fi
120 IUSE="${IUSE} linguas_${X/-/_}"
121 # Install all the specific locale xpis if there's no generic locale xpi
122 # Example: there's no pt.xpi, so install all pt-*.xpi
123 if ! has ${X%%-*} "${LANGS[@]}"; then
124 SRC_URI="${SRC_URI}
125 linguas_${X%%-*}? ( ${LANGPACK_URI}/${X}.xpi -> ${P}-${X}.xpi )"
126 IUSE="${IUSE} linguas_${X%%-*}"
127 fi
128 done
129 fi
130
131 QA_PRESTRIPPED="usr/$(get_libdir)/${PN}/${PN}"
132
133 # TODO: Move all the linguas crap to an eclass
134 linguas() {
135 # Generate the list of language packs called "linguas"
136 # This list is used to install the xpi language packs
137 local LINGUA
138 for LINGUA in ${LINGUAS}; do
139 if has ${LINGUA} en en_US ; then
140 # For mozilla products, en and en_US are handled internally
141 continue
142 # If this language is supported by ${P},
143 elif has ${LINGUA} "${LANGS[@]//-/_}" ; then
144 # Add the language to linguas, if it isn't already there
145 has ${LINGUA//_/-} "${linguas[@]}" || linguas+=(${LINGUA//_/-})
146 continue
147 # For each short LINGUA that isn't in LANGS,
148 # add *all* long LANGS to the linguas list
149 elif ! has ${LINGUA%%-*} "${LANGS[@]}" ; then
150 for LANG in "${LANGS[@]}" ; do
151 if [[ ${LANG} == ${LINGUA}-* ]] ; then
152 has ${LANG} "${linguas[@]}" || linguas+=(${LANG})
153 continue 2
154 fi
155 done
156 fi
157 ewarn "Sorry, but ${P} does not support the ${LINGUA} locale"
158 done
159 }
160
161 pkg_setup() {
162 moz_pkgsetup
163
164 # Avoid PGO profiling problems due to enviroment leakage
165 # These should *always* be cleaned up anyway
166 unset DBUS_SESSION_BUS_ADDRESS \
167 DISPLAY \
168 ORBIT_SOCKETDIR \
169 SESSION_MANAGER \
170 XDG_SESSION_COOKIE \
171 XAUTHORITY
172
173 if use pgo ; then
174 einfo
175 ewarn "You will do a double build for profile guided optimization."
176 ewarn "This will result in your build taking at least twice as long as before."
177 fi
178
179 # Ensure we have enough disk space to compile
180 if use pgo || use debug || use test ; then
181 CHECKREQS_DISK_BUILD="8G"
182 else
183 CHECKREQS_DISK_BUILD="4G"
184 fi
185 check-reqs_pkg_setup
186 }
187
188 src_unpack() {
189 unpack ${A}
190
191 linguas
192 for X in "${linguas[@]}" ; do
193 # FIXME: Add support for unpacking xpis to portage
194 xpi_unpack "${P}-${X}.xpi"
195 done
196 }
197
198 src_prepare() {
199 # Fix preferences location
200 sed -i 's|defaults/pref/|defaults/preferences/|' browser/installer/packages-static || die "sed failed"
201
202 # Apply our patches
203 #
204 EPATCH_EXCLUDE="2000-firefox_gentoo_install_dirs.patch
205 5009_revert_bug_708572.patch" \
206 EPATCH_SUFFIX="patch" \
207 EPATCH_FORCE="yes" \
208 epatch "${WORKDIR}/firefox"
209
210 epatch "${FILESDIR}"/2000-icecat-6_gentoo_install_dirs.patch
211
212 # Allow user to apply any additional patches without modifing ebuild
213 epatch_user
214
215 # Fix rebranding
216 sed -i 's|\$(DIST)/bin/firefox|\$(DIST)/bin/icecat|' browser/app/Makefile.in
217
218 # Enable gnomebreakpad
219 if use debug ; then
220 sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \
221 "${S}"/build/unix/run-mozilla.sh || die "sed failed!"
222 fi
223
224 # Disable gnomevfs extension
225 sed -i -e "s:gnomevfs::" "${S}/"browser/confvars.sh \
226 -e "s:gnomevfs::" "${S}/"xulrunner/confvars.sh \
227 || die "Failed to remove gnomevfs extension"
228
229 # Ensure that are plugins dir is enabled as default
230 sed -i -e "s:/usr/lib/mozilla/plugins:/usr/$(get_libdir)/nsbrowser/plugins:" \
231 "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path!"
232
233 # Fix sandbox violations during make clean, bug 372817
234 sed -e "s:\(/no-such-file\):${T}\1:g" \
235 -i "${S}"/config/rules.mk \
236 -i "${S}"/js/src/config/rules.mk \
237 -i "${S}"/nsprpub/configure{.in,} \
238 || die
239
240 eautoreconf
241 }
242
243 src_configure() {
244 # We will build our own .mozconfig
245 rm "${S}"/.mozconfig
246
247 MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
248 MEXTENSIONS="default"
249
250 ####################################
251 #
252 # mozconfig, CFLAGS and CXXFLAGS setup
253 #
254 ####################################
255
256 mozconfig_init
257 mozconfig_config
258
259 # It doesn't compile on alpha without this LDFLAGS
260 use alpha && append-ldflags "-Wl,--no-relax"
261
262 # Specific settings for icecat
263 echo "export MOZ_PHOENIX=1" >> "${S}"/.mozconfig
264 echo "mk_add_options MOZ_PHOENIX=1" "${S}"/.mozconfig
265 mozconfig_annotate '' --with-branding=browser/branding/unofficial
266 mozconfig_annotate '' --disable-official-branding
267 mozconfig_annotate '' --with-user-appdir=.icecat
268
269 mozconfig_annotate '' --prefix="${EPREFIX}"/usr
270 mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir)
271 mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
272 mozconfig_annotate '' --disable-gconf
273 mozconfig_annotate '' --disable-mailnews
274 mozconfig_annotate '' --enable-canvas
275 mozconfig_annotate '' --enable-safe-browsing
276 mozconfig_annotate '' --with-system-png
277 mozconfig_annotate '' --enable-system-ffi
278
279 # Other browser-specific settings
280 mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME}
281
282 mozconfig_annotate '' --target="${CTARGET:-${CHOST}}"
283
284 mozconfig_use_enable system-sqlite
285
286 # Allow for a proper pgo build
287 if use pgo ; then
288 echo "mk_add_options PROFILE_GEN_SCRIPT='\$(PYTHON) \$(OBJDIR)/_profile/pgo/profileserver.py'" >> "${S}"/.mozconfig
289 fi
290
291 # Finalize and report settings
292 mozconfig_final
293
294 if [[ $(gcc-major-version) -lt 4 ]]; then
295 append-cxxflags -fno-stack-protector
296 elif [[ $(gcc-major-version) -gt 4 || $(gcc-minor-version) -gt 3 ]]; then
297 if use amd64 || use x86; then
298 append-flags -mno-avx
299 fi
300 fi
301 }
302
303 src_compile() {
304 if use pgo; then
305 addpredict /root
306 addpredict /etc/gconf
307 # icecat tries to dri stuff when it's run, see bug 380283
308 shopt -s nullglob
309 local cards=$(echo -n /dev/{dri,ati}/card* /dev/nvidiactl* | sed 's/ /:/g')
310 shopt -u nullglob
311 test -n "${cards}" && addpredict "${cards}"
312
313 CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
314 MOZ_MAKE_FLAGS="${MAKEOPTS}" \
315 Xemake -f client.mk profiledbuild || die "Xemake failed"
316 else
317 CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \
318 MOZ_MAKE_FLAGS="${MAKEOPTS}" \
319 emake -f client.mk || die "emake failed"
320 fi
321
322 }
323
324 src_install() {
325 MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
326
327 # MOZ_BUILD_ROOT, and hence OBJ_DIR change depending on arch, compiler, pgo, etc.
328 local obj_dir="$(echo */config.log)"
329 obj_dir="${obj_dir%/*}"
330 cd "${S}/${obj_dir}"
331
332 # Pax mark xpcshell for hardened support, only used for startupcache creation.
333 pax-mark m "${S}/${obj_dir}"/dist/bin/xpcshell
334
335 # Add our default prefs for firefox + xulrunner
336 cp "${FILESDIR}"/gentoo-default-prefs.js-1 \
337 "${S}/${obj_dir}/dist/bin/defaults/pref/all-gentoo.js" || die
338
339 MOZ_MAKE_FLAGS="${MAKEOPTS}" \
340 emake DESTDIR="${D}" install || die "emake install failed"
341
342 linguas
343 for X in "${linguas[@]}" ; do
344 xpi_install "${WORKDIR}/${P}-${X}"
345 done
346
347 local size sizes icon_path icon name
348 sizes="16 32 48"
349 icon_path="${S}/browser/branding/unofficial"
350
351 # Install icons and .desktop for menu entry
352 for size in ${sizes}; do
353 insinto "/usr/share/icons/hicolor/${size}x${size}/apps"
354 newins "${icon_path}/default${size}.png" "${PN}.png" || die
355 done
356 # The 128x128 icon has a different name
357 insinto "/usr/share/icons/hicolor/128x128/apps"
358 newins "${icon_path}/mozicon128.png" "${PN}.png" || die
359 # Install a 48x48 icon into /usr/share/pixmaps for legacy DEs
360 newicon "${icon_path}/content/icon48.png" "${PN}.png" || die
361 newmenu "${FILESDIR}/icon/${PN}.desktop" "${PN}.desktop" || die
362 sed -e "/^Icon/s:${PN}-icon:${PN}:" -i \
363 "${ED}/usr/share/applications/${PN}.desktop" || die
364
365 # Add StartupNotify=true bug 237317
366 if use startup-notification ; then
367 echo "StartupNotify=true" >> "${ED}/usr/share/applications/${PN}.desktop"
368 fi
369
370 # Required in order to use plugins and even run firefox on hardened.
371 pax-mark m "${ED}"/${MOZILLA_FIVE_HOME}/{${PN},${PN}-bin,plugin-container}
372
373 # Plugins dir
374 share_plugins_dir
375 }
376
377 pkg_preinst() {
378 gnome2_icon_savelist
379 }
380
381 pkg_postinst() {
382 # Update mimedb for the new .desktop file
383 fdo-mime_desktop_database_update
384 gnome2_icon_cache_update
385 }
386
387 pkg_postrm() {
388 gnome2_icon_cache_update
389 }