1 |
commit: 38ea4d5b3f48d4c0e8bb002b19aba008edc84265 |
2 |
Author: Ian Stakenvicius <axs <AT> gentoo <DOT> org> |
3 |
AuthorDate: Thu Aug 16 17:21:31 2018 +0000 |
4 |
Commit: Ian Stakenvicius <axs <AT> gentoo <DOT> org> |
5 |
CommitDate: Thu Aug 16 17:21:31 2018 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/mozilla.git/commit/?id=38ea4d5b |
7 |
|
8 |
Merge mozconfig-v6.60.eclass into firefox-60 and thunderbird-60 |
9 |
|
10 |
As the constant eclass bumping has become more and more undesireable, |
11 |
mozconfig is going away and so each ebuild will contain its configuration |
12 |
and dependencies. |
13 |
|
14 |
mail-client/thunderbird/thunderbird-60.0-r1.ebuild | 210 +++++++++++++++++---- |
15 |
www-client/firefox/firefox-60.1.0.ebuild | 202 +++++++++++++++++--- |
16 |
2 files changed, 352 insertions(+), 60 deletions(-) |
17 |
|
18 |
diff --git a/mail-client/thunderbird/thunderbird-60.0-r1.ebuild b/mail-client/thunderbird/thunderbird-60.0-r1.ebuild |
19 |
index f87cfb2..6c739b7 100644 |
20 |
--- a/mail-client/thunderbird/thunderbird-60.0-r1.ebuild |
21 |
+++ b/mail-client/thunderbird/thunderbird-60.0-r1.ebuild |
22 |
@@ -28,10 +28,9 @@ if [[ ${MOZ_ESR} == 1 ]]; then |
23 |
fi |
24 |
MOZ_P="${PN}-${MOZ_PV}" |
25 |
|
26 |
-MOZCONFIG_OPTIONAL_WIFI=1 |
27 |
#MOZ_GENERATE_LANGPACKS=1 |
28 |
|
29 |
-inherit check-reqs flag-o-matic toolchain-funcs gnome2-utils mozconfig-v6.60 pax-utils xdg-utils autotools mozlinguas-v2 |
30 |
+inherit check-reqs flag-o-matic toolchain-funcs gnome2-utils mozcoreconf-v6 pax-utils xdg-utils autotools mozlinguas-v2 |
31 |
|
32 |
DESCRIPTION="Thunderbird Mail Client" |
33 |
HOMEPAGE="http://www.mozilla.com/en-US/thunderbird/" |
34 |
@@ -39,7 +38,8 @@ HOMEPAGE="http://www.mozilla.com/en-US/thunderbird/" |
35 |
KEYWORDS="~amd64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux" |
36 |
SLOT="0" |
37 |
LICENSE="MPL-2.0 GPL-2 LGPL-2.1" |
38 |
-IUSE="bindist crypt hardened lightning +minimal mozdom rust selinux" |
39 |
+IUSE="bindist crypt dbus debug hardened lightning mozdom pulseaudio selinux startup-notification |
40 |
+ system-harfbuzz system-icu system-jpeg system-libevent system-sqlite system-libvpx wifi" |
41 |
RESTRICT="!bindist? ( bindist )" |
42 |
|
43 |
PATCH_URIS=( https://dev.gentoo.org/~{anarchy,axs,polynomial-c}/mozilla/patchsets/{${PATCHTB},${PATCHFF}}.tar.xz ) |
44 |
@@ -54,16 +54,72 @@ ASM_DEPEND=">=dev-lang/yasm-1.1" |
45 |
CDEPEND=" |
46 |
>=dev-libs/nss-3.28.3 |
47 |
>=dev-libs/nspr-4.13.1 |
48 |
+ >=app-text/hunspell-1.5.4:= |
49 |
+ dev-libs/atk |
50 |
+ dev-libs/expat |
51 |
+ >=x11-libs/cairo-1.10[X] |
52 |
+ >=x11-libs/gtk+-2.18:2 |
53 |
+ >=x11-libs/gtk+-3.4.0:3 |
54 |
+ x11-libs/gdk-pixbuf |
55 |
+ >=x11-libs/pango-1.22.0 |
56 |
+ >=media-libs/libpng-1.6.34:0=[apng] |
57 |
+ >=media-libs/mesa-10.2:* |
58 |
+ media-libs/fontconfig |
59 |
+ >=media-libs/freetype-2.4.10 |
60 |
+ kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) ) |
61 |
+ virtual/freedesktop-icon-theme |
62 |
+ dbus? ( >=sys-apps/dbus-0.60 |
63 |
+ >=dev-libs/dbus-glib-0.72 ) |
64 |
+ startup-notification? ( >=x11-libs/startup-notification-0.8 ) |
65 |
+ >=x11-libs/pixman-0.19.2 |
66 |
+ >=dev-libs/glib-2.26:2 |
67 |
+ >=sys-libs/zlib-1.2.3 |
68 |
+ >=virtual/libffi-3.0.10 |
69 |
+ virtual/ffmpeg |
70 |
+ x11-libs/libX11 |
71 |
+ x11-libs/libXcomposite |
72 |
+ x11-libs/libXdamage |
73 |
+ x11-libs/libXext |
74 |
+ x11-libs/libXfixes |
75 |
+ x11-libs/libXrender |
76 |
+ x11-libs/libXt |
77 |
+ system-icu? ( >=dev-libs/icu-59.1:= ) |
78 |
+ system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 ) |
79 |
+ system-libevent? ( >=dev-libs/libevent-2.0:0= ) |
80 |
+ system-sqlite? ( >=dev-db/sqlite-3.20.1:3[secure-delete,debug=] ) |
81 |
+ system-libvpx? ( >=media-libs/libvpx-1.5.0:0=[postproc] ) |
82 |
+ system-harfbuzz? ( >=media-libs/harfbuzz-1.4.2:0= >=media-gfx/graphite2-1.3.9-r1 ) |
83 |
+ wifi? ( kernel_linux? ( >=sys-apps/dbus-0.60 |
84 |
+ >=dev-libs/dbus-glib-0.72 |
85 |
+ net-misc/networkmanager ) ) |
86 |
" |
87 |
|
88 |
-DEPEND="rust? ( dev-lang/rust ) |
89 |
- amd64? ( ${ASM_DEPEND} |
90 |
- virtual/opengl ) |
91 |
- x86? ( ${ASM_DEPEND} |
92 |
- virtual/opengl )" |
93 |
+DEPEND="${CDEPEND} |
94 |
+ app-arch/zip |
95 |
+ app-arch/unzip |
96 |
+ >=sys-devel/binutils-2.16.1 |
97 |
+ sys-apps/findutils |
98 |
+ pulseaudio? ( media-sound/pulseaudio ) |
99 |
+ elibc_glibc? ( || ( |
100 |
+ ( >=dev-lang/rust-1.24.0[-extended(-)] >=dev-util/cargo-0.25.0 ) |
101 |
+ >=dev-lang/rust-1.24.0[extended] |
102 |
+ ( >=dev-lang/rust-bin-1.24.0 >=dev-util/cargo-0.25.0 ) |
103 |
+ ) ) |
104 |
+ elibc_musl? ( || ( >=dev-lang/rust-1.24.0 |
105 |
+ >=dev-util/cargo-0.25.0 |
106 |
+ ) ) |
107 |
+ |
108 |
+ >=sys-devel/llvm-4.0.1 |
109 |
+ >=sys-devel/clang-4.0.1 |
110 |
+ amd64? ( ${ASM_DEPEND} virtual/opengl ) |
111 |
+ x86? ( ${ASM_DEPEND} virtual/opengl )" |
112 |
|
113 |
RDEPEND="${CDEPEND} |
114 |
- selinux? ( sec-policy/selinux-thunderbird ) |
115 |
+ pulseaudio? ( || ( media-sound/pulseaudio |
116 |
+ >=media-sound/apulse-0.1.9 ) ) |
117 |
+ selinux? ( sec-policy/selinux-mozilla |
118 |
+ sec-policy/selinux-thunderbird |
119 |
+ ) |
120 |
crypt? ( >=x11-plugins/enigmail-1.9.8.3-r1 ) |
121 |
" |
122 |
|
123 |
@@ -129,13 +185,6 @@ src_prepare() { |
124 |
sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \ |
125 |
-i "${S}"/comm/mail/installer/Makefile.in || die |
126 |
|
127 |
- # Shell scripts sometimes contain DOS line endings; bug 391889 |
128 |
-# grep -rlZ --include="*.sh" $'\r$' . | |
129 |
-# while read -r -d $'\0' file ; do |
130 |
-# einfo edos2unix "${file}" |
131 |
-# edos2unix "${file}" |
132 |
-# done |
133 |
- |
134 |
# Apply our Thunderbird patchset |
135 |
pushd "${S}"/comm &>/dev/null || doe |
136 |
eapply "${WORKDIR}"/thunderbird |
137 |
@@ -174,7 +223,23 @@ src_configure() { |
138 |
#################################### |
139 |
|
140 |
mozconfig_init |
141 |
- mozconfig_config |
142 |
+ # common config components |
143 |
+ mozconfig_annotate 'system_libs' \ |
144 |
+ --with-system-zlib \ |
145 |
+ --with-system-bz2 |
146 |
+ |
147 |
+ # Stylo is only broken on x86 builds |
148 |
+ use x86 && mozconfig_annotate 'Upstream bug 1341234' --disable-stylo |
149 |
+ |
150 |
+ # Must pass release in order to properly select linker |
151 |
+ mozconfig_annotate 'Enable by Gentoo' --enable-release |
152 |
+ |
153 |
+ # Must pass --enable-gold if using ld.gold |
154 |
+ if tc-ld-is-gold ; then |
155 |
+ mozconfig_annotate 'tc-ld-is-gold=true' --enable-gold |
156 |
+ else |
157 |
+ mozconfig_annotate 'tc-ld-is-gold=false' --disable-gold |
158 |
+ fi |
159 |
|
160 |
# It doesn't compile on alpha without this LDFLAGS |
161 |
use alpha && append-ldflags "-Wl,--no-relax" |
162 |
@@ -182,14 +247,82 @@ src_configure() { |
163 |
# Add full relro support for hardened |
164 |
use hardened && append-ldflags "-Wl,-z,relro,-z,now" |
165 |
|
166 |
- mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}" |
167 |
- mozconfig_annotate '' --enable-calendar |
168 |
+ # Modifications to better support ARM, bug 553364 |
169 |
+ if use neon ; then |
170 |
+ mozconfig_annotate '' --with-fpu=neon |
171 |
+ mozconfig_annotate '' --with-thumb=yes |
172 |
+ mozconfig_annotate '' --with-thumb-interwork=no |
173 |
+ fi |
174 |
+ if [[ ${CHOST} == armv* ]] ; then |
175 |
+ mozconfig_annotate '' --with-float-abi=hard |
176 |
+ if ! use system-libvpx ; then |
177 |
+ sed -i -e "s|softfp|hard|" \ |
178 |
+ "${S}"/media/libvpx/moz.build |
179 |
+ fi |
180 |
+ fi |
181 |
+ |
182 |
+ mozconfig_use_enable !bindist official-branding |
183 |
+ # Enable position independent executables |
184 |
+ mozconfig_annotate 'enabled by Gentoo' --enable-pie |
185 |
+ |
186 |
+ mozconfig_use_enable debug |
187 |
+ mozconfig_use_enable debug tests |
188 |
+ if ! use debug ; then |
189 |
+ mozconfig_annotate 'disabled by Gentoo' --disable-debug-symbols |
190 |
+ else |
191 |
+ mozconfig_annotate 'enabled by Gentoo' --enable-debug-symbols |
192 |
+ fi |
193 |
+ # These are enabled by default in all mozilla applications |
194 |
+ mozconfig_annotate '' --with-system-nspr --with-nspr-prefix="${SYSROOT}${EPREFIX}"/usr |
195 |
+ mozconfig_annotate '' --with-system-nss --with-nss-prefix="${SYSROOT}${EPREFIX}"/usr |
196 |
+ mozconfig_annotate '' --x-includes="${SYSROOT}${EPREFIX}"/usr/include \ |
197 |
+ --x-libraries="${SYSROOT}${EPREFIX}"/usr/$(get_libdir) |
198 |
+ mozconfig_annotate '' --prefix="${EPREFIX}"/usr |
199 |
+ mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir) |
200 |
+ mozconfig_annotate 'Gentoo default' --enable-system-hunspell |
201 |
+ mozconfig_annotate '' --disable-crashreporter |
202 |
+ mozconfig_annotate 'Gentoo default' --with-system-png |
203 |
+ mozconfig_annotate '' --enable-system-ffi |
204 |
+ mozconfig_annotate '' --disable-gconf |
205 |
+ mozconfig_annotate '' --with-intl-api |
206 |
+ mozconfig_annotate '' --enable-system-pixman |
207 |
+ # Instead of the standard --build= and --host=, mozilla uses --host instead |
208 |
+ # of --build, and --target intstead of --host. |
209 |
+ # Note, mozilla also has --build but it does not do what you think it does. |
210 |
+ # Set both --target and --host as mozilla uses python to guess values otherwise |
211 |
+ mozconfig_annotate '' --target="${CHOST}" |
212 |
+ mozconfig_annotate '' --host="${CBUILD:-${CHOST}}" |
213 |
+ if use system-libevent; then |
214 |
+ mozconfig_annotate '' --with-system-libevent="${SYSROOT}${EPREFIX}"/usr |
215 |
+ fi |
216 |
+ |
217 |
+ # skia has no support for big-endian platforms |
218 |
+ if [[ $(tc-endian) == "big" ]]; then |
219 |
+ mozconfig_annotate 'big endian target' --disable-skia |
220 |
+ else |
221 |
+ mozconfig_annotate '' --enable-skia |
222 |
+ fi |
223 |
+ |
224 |
+ # use the gtk3 toolkit (the only one supported at this point) |
225 |
+ mozconfig_annotate '' --enable-default-toolkit=cairo-gtk3 |
226 |
+ |
227 |
+ mozconfig_use_enable startup-notification |
228 |
+ mozconfig_use_enable system-sqlite |
229 |
+ mozconfig_use_with system-jpeg |
230 |
+ mozconfig_use_with system-icu |
231 |
+ mozconfig_use_with system-libvpx |
232 |
+ mozconfig_use_with system-harfbuzz |
233 |
+ mozconfig_use_with system-harfbuzz system-graphite2 |
234 |
+ mozconfig_use_enable pulseaudio |
235 |
+ # force the deprecated alsa sound code if pulseaudio is disabled |
236 |
+ if use kernel_linux && ! use pulseaudio ; then |
237 |
+ mozconfig_annotate '-pulseaudio' --enable-alsa |
238 |
+ fi |
239 |
+ |
240 |
|
241 |
# Other tb-specific settings |
242 |
mozconfig_annotate '' --with-user-appdir=.thunderbird |
243 |
|
244 |
- # Disabling ldap support causes build failures with 60.0b10 |
245 |
- #mozconfig_use_enable ldap |
246 |
mozconfig_annotate '' --enable-ldap |
247 |
if use hardened; then |
248 |
append-ldflags "-Wl,-z,relro,-z,now" |
249 |
@@ -203,13 +336,13 @@ src_configure() { |
250 |
MEXTENSIONS="${MEXTENSIONS},inspector" |
251 |
fi |
252 |
|
253 |
+ mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}" |
254 |
+ mozconfig_annotate '' --enable-calendar |
255 |
+ |
256 |
# Use an objdir to keep things organized. |
257 |
echo "mk_add_options MOZ_OBJDIR=${BUILD_OBJ_DIR}" >> "${S}"/.mozconfig |
258 |
echo "mk_add_options XARGS=/usr/bin/xargs" >> "${S}"/.mozconfig |
259 |
|
260 |
- # Default mozilla_five_home no longer valid option |
261 |
- sed '/with-default-mozilla-five-home=/d' -i "${S}"/.mozconfig |
262 |
- |
263 |
# Finalize and report settings |
264 |
mozconfig_final |
265 |
|
266 |
@@ -248,18 +381,32 @@ src_install() { |
267 |
"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" \ |
268 |
|| die |
269 |
|
270 |
- mozconfig_install_prefs \ |
271 |
- "${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" |
272 |
+ |
273 |
+ # set dictionary path, to use system hunspell |
274 |
+ echo "pref(\"spellchecker.dictionary_path\", \"${EPREFIX}/usr/share/myspell\");" \ |
275 |
+ >>"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" || die |
276 |
+ |
277 |
+ # force the graphite pref if system-harfbuzz is enabled, since the pref cant disable it |
278 |
+ if use system-harfbuzz ; then |
279 |
+ echo "sticky_pref(\"gfx.font_rendering.graphite.enabled\",true);" \ |
280 |
+ >>"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" || die |
281 |
+ fi |
282 |
+ |
283 |
+ # force cairo as the canvas renderer on platforms without skia support |
284 |
+ if [[ $(tc-endian) == "big" ]] ; then |
285 |
+ echo "sticky_pref(\"gfx.canvas.azure.backends\",\"cairo\");" \ |
286 |
+ >>"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" || die |
287 |
+ echo "sticky_pref(\"gfx.content.azure.backends\",\"cairo\");" \ |
288 |
+ >>"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" || die |
289 |
+ fi |
290 |
|
291 |
# dev-db/sqlite does not have FTS3_TOKENIZER support. |
292 |
# gloda needs it to function, and bad crashes happen when its enabled and doesn't work |
293 |
- if in_iuse system-sqlite && use system-sqlite ; then |
294 |
+ if use system-sqlite ; then |
295 |
echo "sticky_pref(\"mailnews.database.global.indexer.enabled\", false);" \ |
296 |
>>"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" || die |
297 |
fi |
298 |
|
299 |
-# MOZ_MAKE_FLAGS="${MAKEOPTS}" \ |
300 |
-# emake DESTDIR="${D}" install |
301 |
cd "${S}" || die |
302 |
MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX}/bin/bash}" MOZ_NOSPAM=1 \ |
303 |
DESTDIR="${D}" ./mach install |
304 |
@@ -320,11 +467,6 @@ src_install() { |
305 |
|
306 |
# Required in order to use plugins and even run thunderbird on hardened. |
307 |
pax-mark pm "${ED}"${MOZILLA_FIVE_HOME}/{thunderbird,thunderbird-bin,plugin-container} |
308 |
- |
309 |
-# if use minimal; then |
310 |
-# rm -r "${ED}"/usr/include "${ED}"${MOZILLA_FIVE_HOME}/{idl,include,lib,sdk} || \ |
311 |
-# die "Failed to remove sdk and headers" |
312 |
-# fi |
313 |
} |
314 |
|
315 |
pkg_preinst() { |
316 |
|
317 |
diff --git a/www-client/firefox/firefox-60.1.0.ebuild b/www-client/firefox/firefox-60.1.0.ebuild |
318 |
index f808822..8f2df81 100644 |
319 |
--- a/www-client/firefox/firefox-60.1.0.ebuild |
320 |
+++ b/www-client/firefox/firefox-60.1.0.ebuild |
321 |
@@ -27,10 +27,8 @@ fi |
322 |
PATCH="${PN}-60.0-patches-02" |
323 |
MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/releases" |
324 |
|
325 |
-MOZCONFIG_OPTIONAL_WIFI=1 |
326 |
- |
327 |
inherit check-reqs flag-o-matic toolchain-funcs eutils gnome2-utils llvm \ |
328 |
- mozconfig-v6.60 pax-utils xdg-utils autotools mozlinguas-v2 |
329 |
+ mozcoreconf-v6 pax-utils xdg-utils autotools mozlinguas-v2 |
330 |
|
331 |
DESCRIPTION="Firefox Web Browser" |
332 |
HOMEPAGE="http://www.mozilla.com/firefox" |
333 |
@@ -39,32 +37,84 @@ KEYWORDS="~amd64 ~x86" |
334 |
|
335 |
SLOT="0" |
336 |
LICENSE="MPL-2.0 GPL-2 LGPL-2.1" |
337 |
-IUSE="bindist eme-free +gmp-autoupdate hardened hwaccel jack +screenshot selinux test" |
338 |
+IUSE="bindist dbus debug eme-free +gmp-autoupdate hardened hwaccel jack neon |
339 |
+ pulseaudio +screenshot selinux startup-notification system-harfbuzz system-icu |
340 |
+ system-jpeg system-libevent system-sqlite system-libvpx test wifi" |
341 |
RESTRICT="!bindist? ( bindist )" |
342 |
|
343 |
-SRCHASH=239e434d6d2b8e1e2b697c3416d1e96d48fe98e5 |
344 |
-SDIR="release" |
345 |
-[[ ${PV} = *_beta* ]] && SDIR="beta" |
346 |
- |
347 |
PATCH_URIS=( https://dev.gentoo.org/~{anarchy,axs,polynomial-c}/mozilla/patchsets/${PATCH}.tar.xz ) |
348 |
SRC_URI="${SRC_URI} |
349 |
${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.xz |
350 |
${PATCH_URIS[@]}" |
351 |
|
352 |
-ASM_DEPEND=">=dev-lang/yasm-1.1" |
353 |
- |
354 |
-RDEPEND=" |
355 |
- system-icu? ( >=dev-libs/icu-60.2 ) |
356 |
- jack? ( virtual/jack ) |
357 |
+CDEPEND=" |
358 |
>=dev-libs/nss-3.36.1 |
359 |
>=dev-libs/nspr-4.19 |
360 |
+ >=app-text/hunspell-1.5.4:= |
361 |
+ dev-libs/atk |
362 |
+ dev-libs/expat |
363 |
+ >=x11-libs/cairo-1.10[X] |
364 |
+ >=x11-libs/gtk+-2.18:2 |
365 |
+ >=x11-libs/gtk+-3.4.0:3 |
366 |
+ x11-libs/gdk-pixbuf |
367 |
+ >=x11-libs/pango-1.22.0 |
368 |
+ >=media-libs/libpng-1.6.34:0=[apng] |
369 |
+ >=media-libs/mesa-10.2:* |
370 |
+ media-libs/fontconfig |
371 |
+ >=media-libs/freetype-2.4.10 |
372 |
+ kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) ) |
373 |
+ virtual/freedesktop-icon-theme |
374 |
+ dbus? ( >=sys-apps/dbus-0.60 |
375 |
+ >=dev-libs/dbus-glib-0.72 ) |
376 |
+ startup-notification? ( >=x11-libs/startup-notification-0.8 ) |
377 |
+ >=x11-libs/pixman-0.19.2 |
378 |
+ >=dev-libs/glib-2.26:2 |
379 |
+ >=sys-libs/zlib-1.2.3 |
380 |
+ >=virtual/libffi-3.0.10 |
381 |
+ virtual/ffmpeg |
382 |
+ x11-libs/libX11 |
383 |
+ x11-libs/libXcomposite |
384 |
+ x11-libs/libXdamage |
385 |
+ x11-libs/libXext |
386 |
+ x11-libs/libXfixes |
387 |
+ x11-libs/libXrender |
388 |
+ x11-libs/libXt |
389 |
+ system-icu? ( >=dev-libs/icu-60.2:= ) |
390 |
+ system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 ) |
391 |
+ system-libevent? ( >=dev-libs/libevent-2.0:0= ) |
392 |
+ system-sqlite? ( >=dev-db/sqlite-3.20.1:3[secure-delete,debug=] ) |
393 |
+ system-libvpx? ( >=media-libs/libvpx-1.5.0:0=[postproc] ) |
394 |
+ system-harfbuzz? ( >=media-libs/harfbuzz-1.4.2:0= >=media-gfx/graphite2-1.3.9-r1 ) |
395 |
+ wifi? ( kernel_linux? ( >=sys-apps/dbus-0.60 |
396 |
+ >=dev-libs/dbus-glib-0.72 |
397 |
+ net-misc/networkmanager ) ) |
398 |
+ jack? ( virtual/jack ) |
399 |
selinux? ( sec-policy/selinux-mozilla )" |
400 |
|
401 |
-DEPEND="${RDEPEND} |
402 |
+RDEPEND="${CDEPEND} |
403 |
+ jack? ( virtual/jack ) |
404 |
+ pulseaudio? ( || ( media-sound/pulseaudio |
405 |
+ >=media-sound/apulse-0.1.9 ) ) |
406 |
+ selinux? ( sec-policy/selinux-mozilla )" |
407 |
+ |
408 |
+DEPEND="${CDEPEND} |
409 |
+ app-arch/zip |
410 |
+ app-arch/unzip |
411 |
+ >=sys-devel/binutils-2.16.1 |
412 |
+ sys-apps/findutils |
413 |
+ pulseaudio? ( media-sound/pulseaudio ) |
414 |
+ elibc_glibc? ( || ( |
415 |
+ ( >=dev-lang/rust-1.24.0[-extended(-)] >=dev-util/cargo-0.25.0 ) |
416 |
+ >=dev-lang/rust-1.24.0[extended] |
417 |
+ ( >=dev-lang/rust-bin-1.24.0 >=dev-util/cargo-0.25.0 ) |
418 |
+ ) ) |
419 |
+ elibc_musl? ( || ( >=dev-lang/rust-1.24.0 |
420 |
+ >=dev-util/cargo-0.25.0 |
421 |
+ ) ) |
422 |
>=sys-devel/llvm-4.0.1 |
423 |
>=sys-devel/clang-4.0.1 |
424 |
- amd64? ( ${ASM_DEPEND} virtual/opengl ) |
425 |
- x86? ( ${ASM_DEPEND} virtual/opengl )" |
426 |
+ amd64? ( >=dev-lang/yasm-1.1 virtual/opengl ) |
427 |
+ x86? ( >=dev-lang/yasm-1.1 virtual/opengl )" |
428 |
|
429 |
S="${WORKDIR}/firefox-${PV%_*}" |
430 |
|
431 |
@@ -192,13 +242,23 @@ src_configure() { |
432 |
#################################### |
433 |
|
434 |
mozconfig_init |
435 |
- mozconfig_config |
436 |
+ # common config components |
437 |
+ mozconfig_annotate 'system_libs' \ |
438 |
+ --with-system-zlib \ |
439 |
+ --with-system-bz2 |
440 |
|
441 |
- # enable JACK, bug 600002 |
442 |
- mozconfig_use_enable jack |
443 |
+ # Stylo is only broken on x86 builds |
444 |
+ use x86 && mozconfig_annotate 'Upstream bug 1341234' --disable-stylo |
445 |
|
446 |
- # Enable/Disable eme support |
447 |
- use eme-free && mozconfig_annotate '+eme-free' --disable-eme |
448 |
+ # Must pass release in order to properly select linker |
449 |
+ mozconfig_annotate 'Enable by Gentoo' --enable-release |
450 |
+ |
451 |
+ # Must pass --enable-gold if using ld.gold |
452 |
+ if tc-ld-is-gold ; then |
453 |
+ mozconfig_annotate 'tc-ld-is-gold=true' --enable-gold |
454 |
+ else |
455 |
+ mozconfig_annotate 'tc-ld-is-gold=false' --disable-gold |
456 |
+ fi |
457 |
|
458 |
# It doesn't compile on alpha without this LDFLAGS |
459 |
use alpha && append-ldflags "-Wl,--no-relax" |
460 |
@@ -209,6 +269,84 @@ src_configure() { |
461 |
mozconfig_use_enable hardened hardening |
462 |
fi |
463 |
|
464 |
+ # Modifications to better support ARM, bug 553364 |
465 |
+ if use neon ; then |
466 |
+ mozconfig_annotate '' --with-fpu=neon |
467 |
+ mozconfig_annotate '' --with-thumb=yes |
468 |
+ mozconfig_annotate '' --with-thumb-interwork=no |
469 |
+ fi |
470 |
+ if [[ ${CHOST} == armv* ]] ; then |
471 |
+ mozconfig_annotate '' --with-float-abi=hard |
472 |
+ if ! use system-libvpx ; then |
473 |
+ sed -i -e "s|softfp|hard|" \ |
474 |
+ "${S}"/media/libvpx/moz.build |
475 |
+ fi |
476 |
+ fi |
477 |
+ |
478 |
+ mozconfig_use_enable !bindist official-branding |
479 |
+ # Enable position independent executables |
480 |
+ mozconfig_annotate 'enabled by Gentoo' --enable-pie |
481 |
+ |
482 |
+ mozconfig_use_enable debug |
483 |
+ mozconfig_use_enable debug tests |
484 |
+ if ! use debug ; then |
485 |
+ mozconfig_annotate 'disabled by Gentoo' --disable-debug-symbols |
486 |
+ else |
487 |
+ mozconfig_annotate 'enabled by Gentoo' --enable-debug-symbols |
488 |
+ fi |
489 |
+ # These are enabled by default in all mozilla applications |
490 |
+ mozconfig_annotate '' --with-system-nspr --with-nspr-prefix="${SYSROOT}${EPREFIX}"/usr |
491 |
+ mozconfig_annotate '' --with-system-nss --with-nss-prefix="${SYSROOT}${EPREFIX}"/usr |
492 |
+ mozconfig_annotate '' --x-includes="${SYSROOT}${EPREFIX}"/usr/include \ |
493 |
+ --x-libraries="${SYSROOT}${EPREFIX}"/usr/$(get_libdir) |
494 |
+ mozconfig_annotate '' --prefix="${EPREFIX}"/usr |
495 |
+ mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir) |
496 |
+ mozconfig_annotate 'Gentoo default' --enable-system-hunspell |
497 |
+ mozconfig_annotate '' --disable-crashreporter |
498 |
+ mozconfig_annotate 'Gentoo default' --with-system-png |
499 |
+ mozconfig_annotate '' --enable-system-ffi |
500 |
+ mozconfig_annotate '' --disable-gconf |
501 |
+ mozconfig_annotate '' --with-intl-api |
502 |
+ mozconfig_annotate '' --enable-system-pixman |
503 |
+ # Instead of the standard --build= and --host=, mozilla uses --host instead |
504 |
+ # of --build, and --target intstead of --host. |
505 |
+ # Note, mozilla also has --build but it does not do what you think it does. |
506 |
+ # Set both --target and --host as mozilla uses python to guess values otherwise |
507 |
+ mozconfig_annotate '' --target="${CHOST}" |
508 |
+ mozconfig_annotate '' --host="${CBUILD:-${CHOST}}" |
509 |
+ if use system-libevent; then |
510 |
+ mozconfig_annotate '' --with-system-libevent="${SYSROOT}${EPREFIX}"/usr |
511 |
+ fi |
512 |
+ |
513 |
+ # skia has no support for big-endian platforms |
514 |
+ if [[ $(tc-endian) == "big" ]]; then |
515 |
+ mozconfig_annotate 'big endian target' --disable-skia |
516 |
+ else |
517 |
+ mozconfig_annotate '' --enable-skia |
518 |
+ fi |
519 |
+ |
520 |
+ # use the gtk3 toolkit (the only one supported at this point) |
521 |
+ mozconfig_annotate '' --enable-default-toolkit=cairo-gtk3 |
522 |
+ |
523 |
+ mozconfig_use_enable startup-notification |
524 |
+ mozconfig_use_enable system-sqlite |
525 |
+ mozconfig_use_with system-jpeg |
526 |
+ mozconfig_use_with system-icu |
527 |
+ mozconfig_use_with system-libvpx |
528 |
+ mozconfig_use_with system-harfbuzz |
529 |
+ mozconfig_use_with system-harfbuzz system-graphite2 |
530 |
+ mozconfig_use_enable pulseaudio |
531 |
+ # force the deprecated alsa sound code if pulseaudio is disabled |
532 |
+ if use kernel_linux && ! use pulseaudio ; then |
533 |
+ mozconfig_annotate '-pulseaudio' --enable-alsa |
534 |
+ fi |
535 |
+ |
536 |
+ # enable JACK, bug 600002 |
537 |
+ mozconfig_use_enable jack |
538 |
+ |
539 |
+ # Enable/Disable eme support |
540 |
+ use eme-free && mozconfig_annotate '+eme-free' --disable-eme |
541 |
+ |
542 |
# Setup api key for location services |
543 |
echo -n "${_google_api_key}" > "${S}"/google-api-key |
544 |
mozconfig_annotate '' --with-google-api-keyfile="${S}/google-api-key" |
545 |
@@ -218,9 +356,6 @@ src_configure() { |
546 |
echo "mk_add_options MOZ_OBJDIR=${BUILD_OBJ_DIR}" >> "${S}"/.mozconfig |
547 |
echo "mk_add_options XARGS=/usr/bin/xargs" >> "${S}"/.mozconfig |
548 |
|
549 |
- # Default mozilla_five_home no longer valid option |
550 |
- sed '/with-default-mozilla-five-home=/d' -i "${S}"/.mozconfig |
551 |
- |
552 |
# Finalize and report settings |
553 |
mozconfig_final |
554 |
|
555 |
@@ -245,8 +380,23 @@ src_install() { |
556 |
"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" \ |
557 |
|| die |
558 |
|
559 |
- mozconfig_install_prefs \ |
560 |
- "${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" |
561 |
+ # set dictionary path, to use system hunspell |
562 |
+ echo "pref(\"spellchecker.dictionary_path\", \"${EPREFIX}/usr/share/myspell\");" \ |
563 |
+ >>"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" || die |
564 |
+ |
565 |
+ # force the graphite pref if system-harfbuzz is enabled, since the pref cant disable it |
566 |
+ if use system-harfbuzz ; then |
567 |
+ echo "sticky_pref(\"gfx.font_rendering.graphite.enabled\",true);" \ |
568 |
+ >>"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" || die |
569 |
+ fi |
570 |
+ |
571 |
+ # force cairo as the canvas renderer on platforms without skia support |
572 |
+ if [[ $(tc-endian) == "big" ]] ; then |
573 |
+ echo "sticky_pref(\"gfx.canvas.azure.backends\",\"cairo\");" \ |
574 |
+ >>"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" || die |
575 |
+ echo "sticky_pref(\"gfx.content.azure.backends\",\"cairo\");" \ |
576 |
+ >>"${BUILD_OBJ_DIR}/dist/bin/browser/defaults/preferences/all-gentoo.js" || die |
577 |
+ fi |
578 |
|
579 |
# Augment this with hwaccel prefs |
580 |
if use hwaccel ; then |