Gentoo Archives: gentoo-commits

From: "Jory Pratt (anarchy)" <anarchy@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in www-client/icecat: icecat-3.5.4.ebuild ChangeLog
Date: Fri, 30 Oct 2009 10:28:24
Message-Id: E1N3oiU-0005M1-BU@stork.gentoo.org
1 anarchy 09/10/30 10:28:22
2
3 Modified: ChangeLog
4 Added: icecat-3.5.4.ebuild
5 Log:
6 security fixes
7 (Portage version: 2.1.7.1/cvs/Linux x86_64)
8
9 Revision Changes Path
10 1.3 www-client/icecat/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/www-client/icecat/ChangeLog?rev=1.3&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/www-client/icecat/ChangeLog?rev=1.3&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/www-client/icecat/ChangeLog?r1=1.2&r2=1.3
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/www-client/icecat/ChangeLog,v
19 retrieving revision 1.2
20 retrieving revision 1.3
21 diff -u -r1.2 -r1.3
22 --- ChangeLog 29 Oct 2009 12:50:23 -0000 1.2
23 +++ ChangeLog 30 Oct 2009 10:28:21 -0000 1.3
24 @@ -1,6 +1,11 @@
25 # ChangeLog for www-client/icecat
26 # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/www-client/icecat/ChangeLog,v 1.2 2009/10/29 12:50:23 anarchy Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/www-client/icecat/ChangeLog,v 1.3 2009/10/30 10:28:21 anarchy Exp $
29 +
30 +*icecat-3.5.4 (30 Oct 2009)
31 +
32 + 30 Oct 2009; Jory A. Pratt <anarchy@g.o> +icecat-3.5.4.ebuild:
33 + update for security fixes
34
35 29 Oct 2009; Jory A. Pratt <anarchy@g.o> icecat-3.5.3.ebuild:
36 block xulrunner-1.9.2 from being permitted to updated
37
38
39
40 1.1 www-client/icecat/icecat-3.5.4.ebuild
41
42 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/www-client/icecat/icecat-3.5.4.ebuild?rev=1.1&view=markup
43 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/www-client/icecat/icecat-3.5.4.ebuild?rev=1.1&content-type=text/plain
44
45 Index: icecat-3.5.4.ebuild
46 ===================================================================
47 # Copyright 1999-2009 Gentoo Foundation
48 # Distributed under the terms of the GNU General Public License v2
49 # $Header: /var/cvsroot/gentoo-x86/www-client/icecat/icecat-3.5.4.ebuild,v 1.1 2009/10/30 10:28:21 anarchy Exp $
50 EAPI="2"
51 WANT_AUTOCONF="2.1"
52
53 inherit flag-o-matic toolchain-funcs eutils mozconfig-3 makeedit multilib pax-utils fdo-mime autotools mozextension
54
55 LANGS="af ar as be bg bn-BD bn-IN ca cs cy da de el en en-GB en-US eo es-AR
56 es-CL es-ES es-MX et eu fa fi fr fy-NL ga-IE gl gu-IN he hi-IN hr hu id is it ja
57 ka kk kn ko ku lt lv mk ml mn mr nb-NO nl nn-NO oc or pa-IN pl pt-BR pt-PT rm ro
58 ru si sk sl sq sr sv-SE ta-LK ta te th tr uk vi zh-CN zh-TW"
59 NOSHORTLANGS="en-GB es-AR es-CL es-MX pt-BR zh-CN zh-TW"
60
61 XUL_PV="1.9.1.4"
62 MAJ_PV="${PV/_*/}" # Without the _rc and _beta stuff
63 MAJ_XUL_PV="1.9.1"
64 DESKTOP_PV="3.5"
65 MY_PV="${PV/_beta/b}" # Handle betas for SRC_URI
66 MY_PV="${PV/_/}" # Handle rcs for SRC_URI
67 FIREFOX_PN="mozilla-firefox"
68 FIREFOX_P="${FIREFOX_PN}-${PV}"
69 PATCH="${FIREFOX_PN}-3.5.2-patches-0.1"
70
71 DESCRIPTION="GNU project's edition of Mozilla Firefox"
72 HOMEPAGE="http://www.gnu.org/software/gnuzilla/"
73
74 KEYWORDS="~x86 ~amd64"
75 SLOT="0"
76 LICENSE="|| ( MPL-1.1 GPL-2 LGPL-2.1 )"
77 IUSE="+alsa java mozdevelop restrict-javascript sqlite"
78
79 FIREFOX_REL_URI="http://releases.mozilla.org/pub/mozilla.org/firefox/releases"
80 SRC_URI="mirror://gnu/gnuzilla/${MY_PV}/${PN}-${MY_PV}.tar.bz2
81 http://dev.gentoo.org/~anarchy/dist/${PATCH}.tar.bz2"
82
83 for X in ${LANGS} ; do
84 if [ "${X}" != "en" ] && [ "${X}" != "en-US" ]; then
85 SRC_URI="${SRC_URI}
86 linguas_${X/-/_}? ( ${FIREFOX_REL_URI}/${MY_PV}/linux-i686/xpi/${X}.xpi -> ${FIREFOX_P}-${X}.xpi )"
87 fi
88 IUSE="${IUSE} linguas_${X/-/_}"
89 # english is handled internally
90 if [ "${#X}" == 5 ] && ! has ${X} ${NOSHORTLANGS}; then
91 if [ "${X}" != "en-US" ]; then
92 SRC_URI="${SRC_URI}
93 linguas_${X%%-*}? ( ${FIREFOX_REL_URI}/${PV}/linux-i686/xpi/${X}.xpi -> ${FIREFOX_P}-${X}.xpi )"
94 fi
95 IUSE="${IUSE} linguas_${X%%-*}"
96 fi
97 done
98
99 RDEPEND="
100 >=sys-devel/binutils-2.16.1
101 >=dev-libs/nss-3.12.2
102 >=dev-libs/nspr-4.7.3
103 sqlite? ( >=dev-db/sqlite-3.6.10 )
104 >=app-text/hunspell-1.2
105 alsa? ( media-libs/alsa-lib )
106 ~net-libs/xulrunner-${XUL_PV}[java=,sqlite=]
107 >=x11-libs/cairo-1.8.8[X]
108 x11-libs/pango[X]"
109
110 DEPEND="${RDEPEND}
111 dev-util/pkgconfig"
112
113 PDEPEND="restrict-javascript? ( >=www-plugins/noscript-1.9.6.6 )"
114
115 linguas() {
116 local LANG SLANG
117 for LANG in ${LINGUAS}; do
118 if has ${LANG} en en_US; then
119 has en ${linguas} || linguas="${linguas:+"${linguas} "}en"
120 continue
121 elif has ${LANG} ${LANGS//-/_}; then
122 has ${LANG//_/-} ${linguas} || linguas="${linguas:+"${linguas} "}${LANG//_/-}"
123 continue
124 elif [[ " ${LANGS} " == *" ${LANG}-"* ]]; then
125 for X in ${LANGS}; do
126 if [[ "${X}" == "${LANG}-"* ]] && \
127 [[ " ${NOSHORTLANGS} " != *" ${X} "* ]]; then
128 has ${X} ${linguas} || linguas="${linguas:+"${linguas} "}${X}"
129 continue 2
130 fi
131 done
132 fi
133 ewarn "Sorry, but ${PN} does not support the ${LANG} LINGUA"
134 done
135 }
136
137 src_unpack() {
138 unpack ${A}
139
140 linguas
141 for X in ${linguas}; do
142 # FIXME: Add support for unpacking xpis to portage
143 [[ ${X} != "en" ]] && xpi_unpack "${FIREFOX_P}-${X}.xpi"
144 done
145 if [[ ${linguas} != "" && ${linguas} != "en" ]]; then
146 einfo "Selected language packs (first will be default): ${linguas}"
147 fi
148 }
149
150 src_prepare() {
151 # Integrate rebranding
152 sed -i "s|/mozilla-firefox|/icecat|" \
153 "${WORKDIR}"/001-firefox_gentoo_install_dirs.patch
154
155 # Fix preferences location
156 sed -i 's|defaults/pref/|defaults/preferences/|' browser/installer/packages-static || die "sed failed"
157
158 for X in ${linguas}; do
159 # replace any linguas-provided branding with official branding
160 if [ ${X} != "en" ]; then
161 cd "${WORKDIR}"/${FIREFOX_P}-${X}/chrome/
162 unzip -q ${X}.jar
163
164 # Ensure branding is copied directly from icecat
165 cp "${S}"/browser/branding/unofficial/brand\.* locale/branding/
166
167 # Any variable being set should be changed
168 find . -type f -exec sed -i 's/\(.*=.*\)Firefox/\1IceCat/g' {} +;
169
170 rm ${X}.jar
171 zip -q -r ${X}.jar .
172
173 rm -r locale/
174
175 cd "${S}"
176 fi
177 done
178
179 # Apply our patches
180 EPATCH_SUFFIX="patch" \
181 EPATCH_FORCE="yes" \
182 epatch "${WORKDIR}"
183
184 # Fix rebranding
185 sed -i 's|\$(DIST)/bin/firefox|\$(DIST)/bin/icecat|' browser/app/Makefile.in
186
187 eautoreconf
188
189 cd js/src
190 eautoreconf
191
192 # We need to re-patch this because autoreconf overwrites it
193 epatch "${FILESDIR}/000_flex-configure-LANG.patch"
194 }
195
196 src_configure() {
197 # We will build our own .mozconfig
198 rm "${S}"/.mozconfig
199
200 MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
201 MEXTENSIONS="default"
202
203 ####################################
204 #
205 # mozconfig, CFLAGS and CXXFLAGS setup
206 #
207 ####################################
208
209 mozconfig_init
210 mozconfig_config
211
212 # It doesn't compile on alpha without this LDFLAGS
213 use alpha && append-ldflags "-Wl,--no-relax"
214
215 # Specific settings for icecat
216 echo "export MOZ_PHOENIX=1" >> "${S}"/.mozconfig
217 echo "mk_add_options MOZ_PHOENIX=1" "${S}"/.mozconfig
218 mozconfig_annotate 'gtk' --enable-default-toolkit=cairo-gtk2
219 mozconfig_annotate '' --with-branding=browser/branding/unofficial
220 mozconfig_annotate '' --disable-official-branding
221 mozconfig_annotate '' --with-user-appdir=.icecat
222
223 mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
224 mozconfig_annotate '' --enable-application=browser
225 mozconfig_annotate '' --disable-mailnews
226 mozconfig_annotate 'broken' --disable-crashreporter
227 mozconfig_annotate '' --enable-image-encoder=all
228 mozconfig_annotate '' --enable-canvas
229 # Bug 60668: Galeon doesn't build without oji enabled, so enable it
230 # regardless of java setting.
231 mozconfig_annotate '' --enable-oji --enable-mathml
232 mozconfig_annotate 'places' --enable-storage --enable-places
233 mozconfig_annotate '' --enable-safe-browsing
234
235 # System-wide install specs
236 mozconfig_annotate '' --disable-installer
237 mozconfig_annotate '' --disable-updater
238 mozconfig_annotate '' --disable-strip
239 mozconfig_annotate '' --disable-install-strip
240
241 # Use system libraries
242 mozconfig_annotate '' --enable-system-cairo
243 mozconfig_annotate '' --enable-system-hunspell
244 mozconfig_annotate '' --with-system-nspr
245 mozconfig_annotate '' --with-system-nss
246 mozconfig_annotate '' --enable-system-lcms
247 mozconfig_annotate '' --with-system-bz2
248 mozconfig_annotate '' --with-system-libxul
249 mozconfig_annotate '' --with-libxul-sdk=/usr/$(get_libdir)/xulrunner-devel-${MAJ_XUL_PV}
250
251 # Enable/Disable based on useflag
252 mozconfig_use_enable sqlite system-sqlite
253 mozconfig_use_enable mozdevelop jsd
254 mozconfig_use_enable mozdevelop xpctools
255 mozconfig_use_enable alsa ogg
256 mozconfig_use_enable alsa wave
257
258 # Other ff-specific settings
259 mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME}
260
261 # Finalize and report settings
262 mozconfig_final
263
264 if [[ $(gcc-major-version) -lt 4 ]]; then
265 append-cxxflags -fno-stack-protector
266 fi
267
268 ####################################
269 #
270 # Configure and build
271 #
272 ####################################
273
274 CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" econf
275 }
276
277 src_compile() {
278 # Should the build use multiprocessing? Not enabled by default, as it tends to break
279 [ "${WANT_MP}" = "true" ] && jobs=${MAKEOPTS} || jobs="-j1"
280 emake ${jobs} || die
281 }
282
283 src_install() {
284 MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
285
286 emake DESTDIR="${D}" install || die "emake install failed"
287
288 linguas
289 for X in ${linguas}; do
290 [[ ${X} != "en" ]] && xpi_install "${WORKDIR}"/"${FIREFOX_P}-${X}"
291 done
292
293 # Install icon and .desktop for menu entry
294 newicon "${S}"/browser/base/branding/icon48.png icecat-icon.png
295 newmenu "${FILESDIR}"/icon/icecat.desktop ${PN}-${DESKTOP_PV}.desktop
296
297 # Add StartupNotify=true bug 237317
298 if use startup-notification ; then
299 echo "StartupNotify=true" >> "${D}"/usr/share/applications/${PN}-${DESKTOP_PV}.desktop
300 fi
301
302 pax-mark m "${D}"/${MOZILLA_FIVE_HOME}/${PN}
303
304 # Enable very specific settings not inherited from xulrunner
305 cp "${FILESDIR}"/firefox-default-prefs.js \
306 "${D}/${MOZILLA_FIVE_HOME}/defaults/preferences/all-gentoo.js" || \
307 die "failed to cp icecat-default-prefs.js"
308
309 # Plugins dir
310 dosym ../nsbrowser/plugins "${MOZILLA_FIVE_HOME}"/plugins || die
311 }
312
313 pkg_postinst() {
314 ewarn "All the packages built against ${PN} won't compile,"
315 ewarn "any package that fails to build warrants a bug report."
316 elog
317
318 # Update mimedb for the new .desktop file
319 fdo-mime_desktop_database_update
320 }