From 11fd22e19982f70ccd3eb687ec7a3b1df85651ab Mon Sep 17 00:00:00 2001 From: Ian Stakenvicius Date: Wed, 5 Nov 2014 23:18:36 +0000 Subject: fixed bugs 528062, 527010; moved IUSE=selinux to the eclass Package-Manager: portage-2.2.8-r2/cvs/Linux x86_64 Manifest-Sign-Key: 0x2B6559ED --- www-client/firefox/ChangeLog | 11 +- www-client/firefox/Manifest | 25 +- ...refox-31.0-webm-disallow-negative-samples.patch | 29 ++ www-client/firefox/firefox-31.2.0-r1.ebuild | 377 ++++++++++++++++++++ www-client/firefox/firefox-31.2.0.ebuild | 376 -------------------- www-client/firefox/firefox-33.0-r1.ebuild | 377 ++++++++++++++++++++ www-client/firefox/firefox-33.0.ebuild | 381 --------------------- www-client/seamonkey/ChangeLog | 9 +- www-client/seamonkey/Manifest | 23 +- ...onkey-2.30-webm-disallow-negative-samples.patch | 29 ++ www-client/seamonkey/seamonkey-2.30-r1.ebuild | 354 +++++++++++++++++++ www-client/seamonkey/seamonkey-2.30.ebuild | 371 -------------------- 12 files changed, 1199 insertions(+), 1163 deletions(-) create mode 100644 www-client/firefox/files/firefox-31.0-webm-disallow-negative-samples.patch create mode 100644 www-client/firefox/firefox-31.2.0-r1.ebuild delete mode 100644 www-client/firefox/firefox-31.2.0.ebuild create mode 100644 www-client/firefox/firefox-33.0-r1.ebuild delete mode 100644 www-client/firefox/firefox-33.0.ebuild create mode 100644 www-client/seamonkey/files/seamonkey-2.30-webm-disallow-negative-samples.patch create mode 100644 www-client/seamonkey/seamonkey-2.30-r1.ebuild delete mode 100644 www-client/seamonkey/seamonkey-2.30.ebuild (limited to 'www-client') diff --git a/www-client/firefox/ChangeLog b/www-client/firefox/ChangeLog index 08f129e1446f..173b69bdd290 100644 --- a/www-client/firefox/ChangeLog +++ b/www-client/firefox/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for www-client/firefox # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/www-client/firefox/ChangeLog,v 1.364 2014/11/02 10:25:40 swift Exp $ +# $Header: /var/cvsroot/gentoo-x86/www-client/firefox/ChangeLog,v 1.365 2014/11/05 23:18:28 axs Exp $ + +*firefox-33.0-r1 (05 Nov 2014) +*firefox-31.2.0-r1 (05 Nov 2014) + + 05 Nov 2014; Ian Stakenvicius (_AxS_) + +files/firefox-31.0-webm-disallow-negative-samples.patch, + +firefox-31.2.0-r1.ebuild, +firefox-33.0-r1.ebuild, -firefox-31.2.0.ebuild, + -firefox-33.0.ebuild: + fixed bugs 528062, 527010; moved IUSE=selinux to the eclass 02 Nov 2014; Sven Vermeulen firefox-24.8.0.ebuild, firefox-31.2.0.ebuild, firefox-33.0.ebuild: diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest index 174025898a1b..b05a45293c5e 100644 --- a/www-client/firefox/Manifest +++ b/www-client/firefox/Manifest @@ -1,6 +1,7 @@ -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 +AUX firefox-31.0-webm-disallow-negative-samples.patch 1154 SHA256 15d30a7e48655cf8ef1bf8d5192d22991021d1fdd24b2cb171c8fbf7d06c2845 SHA512 6f577a5bf1098890b52d6eb428748e6baadc524dc669d9382075238d7f66d1ab72454eab3390768b3fc458d21f6de4d6c8bbb7c3619da213b49296aff46b7d41 WHIRLPOOL dabf3e8dd8069224f7c38c61fd2aadf1705209ab5cefea415c6214edff3c0d3db7319d18eabb03c75b9cd05de63215292f724401a8ce2abbb315786f96342ee8 AUX firefox-32.0-hppa-js-configure.patch 363 SHA256 405db6bef28e9ea1b879ad62b57aa82b6fd7d423937ec84d19fe96610bdaf326 SHA512 b9b92f9738bc8a26d8934ae0c9f73089e12415dc0647e5e815257afdf4f3a1eed323892f722b9b85c013ff062e4a7f6db89b51deb171731f7f073871289b0262 WHIRLPOOL 1bdc1a3e6cd7e5b2cc762c6b2555615e07cbe34b866f046786c112516c6e5e4b3b6ddd846c680ddf78e4de58c57fef96931e2ce5d26d01731d1ef3aa8ab012a7 AUX firefox-33.0-jemalloc-configure.patch 1130 SHA256 9b06f23a96da205aac1de73f45e926bffb4c4e0bf0249a323074370a7956b012 SHA512 22ef9036a832208c2ab66e649ac82b4dcbbd28c7b68426ca34882ef13ec50a4d25b8d9e8022848af95a4ab6b4080b9b4f2229a88c7396486f2cf9fd86d6d0fc3 WHIRLPOOL 814e3199b6be04237a223da963eeb2aa04fa77f5c14a6b637be04d62b8fbb741617eda2676ffab8a54a18a2e338c20e1e20d1d0a646c21b285dc3b856955ae67 AUX gentoo-default-prefs.js-1 821 SHA256 16259ec24a231d1d60097c8d892caa80d2703ba5be72304f6da55cfce1b329de SHA512 b63542c51edfe0158ce487b317ea6d36ffc17cf8457534adb6aa3f613d9a027f4285c9dcf76eb1b96de6bbc10ba09948fa6c081e00cfb25ca47450cbc32923f2 WHIRLPOOL 770d4b15f1b142ee1f59ce47f7b6d9e4bf4adb20a8a9fc104ea7d6c2481edb0d685c2e672008dbd869d92e8b24ea6ad8efdb4180421ff19ae88d0a9f6f752121 @@ -434,25 +435,15 @@ DIST firefox-33.0.source.tar.bz2 155177527 SHA256 1018c2fae8c54c8a45f5a3ce348a26 EBUILD firefox-10.0.11.ebuild 10716 SHA256 615a282826523ddf9177762a36d591a005476d19f4366f28cf5f6d129b8b7a26 SHA512 910a64fa40a47efe90a7070a2395ddcf248f14ff01b6da642d7985c6e0d9ef18d44e0a528167309a819ca91b8d2ea4c66eafd937809251507daeff2965ce35ba WHIRLPOOL 2496f7f54785c949f4ac7e0118d413d7d7ecd6bd876253cca1ec66d66b571a4cccbdd515fa308c96144cf5927fbf81de9d7726740010b84e01de4f29b1e9e3d6 EBUILD firefox-24.3.0.ebuild 12059 SHA256 25fbf1a1db269332d3b9df1f47707a55081763367a72507f11da19ea9fa6a48b SHA512 e3e067b1472e657713813816a86a9e25244353592fd7415265bd7bfe454d9314b3ce462194ecf663dc4a556b9d48b32e2cde970de3faaf013fbf79f88d73d1fd WHIRLPOOL 2dc2c713b903b397d9194a8dcf0a4dbc06ffcc3d7d9064bed04bf6120b48a8c921dffacf4bc8e94e881c6560753fb8b82c7a00d913122055a323536cdd9a454b EBUILD firefox-24.8.0.ebuild 12064 SHA256 cec8cf1ff29949cc9ae344ee6ade19c5f5d37a36f17857860a822a3130fe655b SHA512 a6677c826a1555b0f4d791706c797266d98d49bbabef2183f7c1eec6786d76bc25164130100a499b7635be5d1b058329f1e63362dd109824470ab9c131836103 WHIRLPOOL bc9c272dff2e36ca571de91a042794ac5f8836f87be6699cc91b5aaf5034593eda1c2791106f310911d083bc2580a1a1029dd34bb2a44080cac52f70ef5db3c4 -EBUILD firefox-31.2.0.ebuild 11616 SHA256 8b053c6166f8df29e6dde49d1e376a779eb772b3559c7765551699448dd5740f SHA512 4daf5ab4ab618a619f9d8fd98cdb8afb3e699269550f35b0380843dd6a9d01c6fefa9d58db112252a9ce71e107fdc90247092884afda7d16758e7d7ceb56fa4d WHIRLPOOL 092b3d05580233f7da026796b4dfe8e288bb024dc02491d31a95e851695f8618e7c03a5283ecdd5a8267cc7ac5649d592c43776ad57ae7e3445a90d1ea753d16 -EBUILD firefox-33.0.ebuild 11724 SHA256 504bfc44ed9fc3f0e2f53c094d90e264440c47d00a34ddc5dadf2433ce155da6 SHA512 f72337d14f9a7a5859c9c5474619fcf4668823110823b0a27cc7029856c4b27e77372f6a8673476aedc0d06121a03d6fd8a7e5688d732e950a98015c0cf871aa WHIRLPOOL 59eea95132a8b6364ab2917452c96e5e97bff075751cdc8456446536db87b3bc5f0bbee9ed556427622dfd3ce18bf407cb874a066b667c49acf0cf190f8950b4 -MISC ChangeLog 60281 SHA256 611ada85bd1e124c1030fd5660c124278be8ca1c75d8f33244ba1e0b4b39ce83 SHA512 aac105a26d3144e223ec334c0925c951edd2d02e4c16e5db0f38037bde89d729a8a2313ee06221c8c5eee159d0e2e8881d39bc15aee1d802280e88385eae412e WHIRLPOOL 0de4a7a9084ac1731085a02d9039d26203e2fa711e388171bc601eb033d5c3a9a5067df5303a37e855586051a9472df3f11f0c9e99a49d3e0e4cbbada8077d27 +EBUILD firefox-31.2.0-r1.ebuild 11700 SHA256 9916b24dfdb3a7ee8240fa71854ac1885fdf0298515441683fdab046a3ca17a2 SHA512 b34678c187dc7c80b7b1c18a60da50a4cbdc5d97fffb44b0e8d1c063f5e73c478ee8df90fe939fb3a2390f57b2ccb02908a83cdc6cac8cdef2b5b8e51e285e81 WHIRLPOOL 670890fc8a8f17129b0e7ea41b53c421217a678fa423831d01156880f9d99d5b7a4aa74e419647f70c426ed905e623df88e567ad69ce747c6c7948c3b316bf9e +EBUILD firefox-33.0-r1.ebuild 11696 SHA256 2ebeb35b580dc4c06d8790a91313e3ef5119056a4116edb9b0c1fcf28e0e36d2 SHA512 3512dc2bc3ea58b99fa1e1344fc44c14c2c8b75606edc21c50bc8b3a5d85f86ffbddf3cfa20cd6082a2053b17ace0dca640d5e077ae9e63e65b7cd82bb0543c9 WHIRLPOOL e4c8527c60c051f182503fa9bd1718a8b6b78cfde1e64edda1ccc167d8aa7d38eda2f36242a6f16d9464652fecc328414c4b31737bcbebed624d42664eff69cc +MISC ChangeLog 60626 SHA256 d95c1d08c84a4a3ac7ad84641115db361e37d896c9953647d68e31697c3c6072 SHA512 012d3a5219b7b86a67af7896ed3cbd8a044f06320dc030cfaef5252e3e59e637ff63edd4fd362b2bc17fed9bb5eab1386c7624fa39e0ac1a48d3d12fc0c98268 WHIRLPOOL 9871b6b8da92db071c746f666166f1f7fd830d326e8a40381081c6b585882148deb80c4947d6fbbb21fc02daa14de25bcc424eb3916d37b0045aee65c1efa031 MISC ChangeLog-2009 109736 SHA256 6a3f47a190cb2146174953971b193f7d75f408ea2cd1ad7d029fb848dd66f3c8 SHA512 db43c51ba072bd47d8bdf313481156b2e6238c9905147033dc7d7ce5a634ca01b7cfdd399c7b03a4f4af8c44eabf353c7b7e22642220975f1bd33d5a109cce10 WHIRLPOOL 7bdbc95d44e2a564cada83e831ee80b849d468138a6d5e75f23fd4e165408e07af4891bc6989af8e1f792f8d963613de20d013e5a610ee58855c0aad0de475fe MISC metadata.xml 1419 SHA256 ee43c6239b83afed03842cb4e4f13fa85564c2ec9543ee1c9abf2c02699c709a SHA512 f43bdf7068f45f177de2c455b0a3f328d0b886989e3e48fad42547734c78126e1f186e14a71b04ac73ce12a3df7e2741e98ee2988e0324b58426ac4f5e3430c4 WHIRLPOOL f117427249a677d62e9776456a0a957314a3e2d11132134aaf49df0332b6bf580274e6b6f4a08d8797eb8b688065a59e04353195f44f86cbb5d02ce9d1bcc9bd -----BEGIN PGP SIGNATURE----- -Version: GnuPG v2.0 +Version: GnuPG v2 -iQIcBAEBCAAGBQJUVgalAAoJEC7dUkA7aK9Hf38QAIyd1RaSM2QiVq9MoIU5vIGE -EHFGQMPIHSpTgNO2t3c3fMEXXgSmnhv3f+iyvG0C5F703lIBtlt3fBzQcRVm4c9O -QDmE8ioN6FZmU6IYnxkYUhecGmnod3L7fWj5n6Y/dln+A0U/PxtLRWzBVytfZ6qk -23EysuD2ERCEvUJeGNEo4j/Bzy7JuyOh1lLKZN9erQOvX6IWRiWHggLgg0GoADW9 -iJVI8lepT5WJOOniYXb08dNe1L3SxwfpvxCKi//dkkKizs7uG8UY65eqoek4A4es -nWSpZp3rgv100IEAJFFQmnbvX2kE15BYS1qjFaVDc162p48T43ocr6V25zNJp7iB -uo5gwAA8fIBeMwMHFT1LgIitbEkd/pLfyfLLINY6CcrylyN3D1OAJp7ks8Jrn9PN -UTuyqx+lTxOrBJivm4EgO0B5dIiiQvA6HqVAi1Rj/RS+eVVGdIoIcBAo5MO2jffZ -d1cd5TkaUeX9EJmsVkLa/EDf+WUKKEcXuH08goc/3ThrRRl5U2HrQXeht6r6RpaB -iYeJtYd3IuEs5o9jnUHe8kvoDMHl3RtW5Tgok8f5rSPIEvmlSsvIP2LfmnttqY9S -j3VEFYEaHy6tNnH4WW4Rc9h+ZmGDrTlnxuEMf3n4Cln5v335a0qH3OWmQAyAbLJ1 -Nd884Vly/oikSG+Ea5w5 -=7VQi +iF4EAREIAAYFAlRasE8ACgkQ2ugaI38ACPC6ZQD+KHj/aeEwsfuNMio1Yqyx+GIr +bAgbdgAVktQao9DlN1MA/jRqvNpC/NK3FbuaQBnOKVBr/a5xMwvEUtfDdo40ll1L +=pteN -----END PGP SIGNATURE----- diff --git a/www-client/firefox/files/firefox-31.0-webm-disallow-negative-samples.patch b/www-client/firefox/files/firefox-31.0-webm-disallow-negative-samples.patch new file mode 100644 index 000000000000..bccc25e31ad8 --- /dev/null +++ b/www-client/firefox/files/firefox-31.0-webm-disallow-negative-samples.patch @@ -0,0 +1,29 @@ +--- a/content/media/webm/WebMReader.cpp 2014-10-20 21:59:39.000000000 -0400 ++++ b/content/media/webm/WebMReader.cpp 2014-10-28 09:06:51.959665416 -0400 +@@ -668,7 +668,15 @@ + return true; + } + int32_t keepFrames = frames - skipFrames; ++ if (keepFrames < 0) { ++ NS_WARNING("Int overflow in keepFrames"); ++ return false; ++ } + int samples = keepFrames * channels; ++ if (samples < 0) { ++ NS_WARNING("Int overflow in samples"); ++ return false; ++ } + nsAutoArrayPtr trimBuffer(new AudioDataValue[samples]); + for (int i = 0; i < samples; i++) + trimBuffer[i] = buffer[skipFrames*channels + i]; +@@ -691,6 +699,10 @@ + int32_t keepFrames = frames - discardFrames.value(); + if (keepFrames > 0) { + int samples = keepFrames * channels; ++ if (samples < 0) { ++ NS_WARNING("Int overflow in samples"); ++ return false; ++ } + nsAutoArrayPtr trimBuffer(new AudioDataValue[samples]); + for (int i = 0; i < samples; i++) + trimBuffer[i] = buffer[i]; diff --git a/www-client/firefox/firefox-31.2.0-r1.ebuild b/www-client/firefox/firefox-31.2.0-r1.ebuild new file mode 100644 index 000000000000..11a430d33127 --- /dev/null +++ b/www-client/firefox/firefox-31.2.0-r1.ebuild @@ -0,0 +1,377 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/www-client/firefox/firefox-31.2.0-r1.ebuild,v 1.1 2014/11/05 23:18:28 axs Exp $ + +EAPI="5" +VIRTUALX_REQUIRED="pgo" +WANT_AUTOCONF="2.1" +MOZ_ESR="1" + +# This list can be updated with scripts/get_langs.sh from the mozilla overlay +MOZ_LANGS=( af ar as ast be bg bn-BD bn-IN br bs ca cs csb cy da de el en +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 gu-IN he hi-IN hr hu hy-AM id is it ja kk km kn ko ku lt lv mai mk ml mr +nb-NO nl nn-NO or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq sr sv-SE ta te +th tr uk vi xh zh-CN zh-TW zu ) + +# Convert the ebuild version to the upstream mozilla version, used by mozlinguas +MOZ_PV="${PV/_alpha/a}" # Handle alpha for SRC_URI +MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI +MOZ_PV="${MOZ_PV/_rc/rc}" # Handle rc for SRC_URI + +if [[ ${MOZ_ESR} == 1 ]]; then + # ESR releases have slightly version numbers + MOZ_PV="${MOZ_PV}esr" +fi + +# Patch version +PATCH="${PN}-31.0-patches-0.2" +# Upstream ftp release URI that's used by mozlinguas.eclass +# We don't use the http mirror because it deletes old tarballs. +MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/" +MOZ_HTTP_URI="http://ftp.mozilla.org/pub/${PN}/releases/" + +MOZCONFIG_OPTIONAL_WIFI=1 +MOZCONFIG_OPTIONAL_JIT="enabled" + +inherit check-reqs flag-o-matic toolchain-funcs eutils gnome2-utils mozconfig-v5.31 multilib pax-utils fdo-mime autotools virtualx mozlinguas + +DESCRIPTION="Firefox Web Browser" +HOMEPAGE="http://www.mozilla.com/firefox" + +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" +SLOT="0" +LICENSE="MPL-2.0 GPL-2 LGPL-2.1" +IUSE="bindist hardened +minimal pgo selinux test" + +# More URIs appended below... +SRC_URI="${SRC_URI} + http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar.xz + http://dev.gentoo.org/~axs/distfiles/${PATCH}.tar.xz" + +ASM_DEPEND=">=dev-lang/yasm-1.1" + +CDEPEND=" + >=dev-libs/nss-3.16.2 + >=dev-libs/nspr-4.10.6 +" + +DEPEND="${CDEPEND} + pgo? ( + >=sys-devel/gcc-4.5 ) + amd64? ( ${ASM_DEPEND} + virtual/opengl ) + x86? ( ${ASM_DEPEND} + virtual/opengl )" + +RDEPEND="${CDEPEND} + selinux? ( sec-policy/selinux-mozilla ) +" + +# No source releases for alpha|beta +if [[ ${PV} =~ alpha ]]; then + CHANGESET="8a3042764de7" + SRC_URI="${SRC_URI} + http://dev.gentoo.org/~nirbheek/mozilla/firefox/firefox-${MOZ_PV}_${CHANGESET}.source.tar.bz2" + S="${WORKDIR}/mozilla-aurora-${CHANGESET}" +elif [[ ${PV} =~ beta ]]; then + S="${WORKDIR}/mozilla-beta" + SRC_URI="${SRC_URI} + ${MOZ_FTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2 + ${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2" +else + SRC_URI="${SRC_URI} + ${MOZ_FTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2 + ${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2" + if [[ ${MOZ_ESR} == 1 ]]; then + S="${WORKDIR}/mozilla-esr${PV%%.*}" + else + S="${WORKDIR}/mozilla-release" + fi +fi + +QA_PRESTRIPPED="usr/$(get_libdir)/${PN}/firefox" + +pkg_setup() { + moz_pkgsetup + + # Avoid PGO profiling problems due to enviroment leakage + # These should *always* be cleaned up anyway + unset DBUS_SESSION_BUS_ADDRESS \ + DISPLAY \ + ORBIT_SOCKETDIR \ + SESSION_MANAGER \ + XDG_SESSION_COOKIE \ + XAUTHORITY + + if ! use bindist; then + einfo + elog "You are enabling official branding. You may not redistribute this build" + elog "to any users on your network or the internet. Doing so puts yourself into" + elog "a legal problem with Mozilla Foundation" + elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag" + fi + + if use pgo; then + einfo + ewarn "You will do a double build for profile guided optimization." + ewarn "This will result in your build taking at least twice as long as before." + fi +} + +pkg_pretend() { + # Ensure we have enough disk space to compile + if use pgo || use debug || use test ; then + CHECKREQS_DISK_BUILD="8G" + else + CHECKREQS_DISK_BUILD="4G" + fi + check-reqs_pkg_setup + + if use jit && [[ -n ${PROFILE_IS_HARDENED} ]]; then + ewarn "You are emerging this package on a hardened profile with USE=jit enabled." + ewarn "This is horribly insecure as it disables all PAGEEXEC restrictions." + ewarn "Please ensure you know what you are doing. If you don't, please consider" + ewarn "emerging the package with USE=-jit" + fi +} + +src_unpack() { + unpack ${A} + + # Unpack language packs + mozlinguas_src_unpack +} + +src_prepare() { + # Apply our patches + EPATCH_SUFFIX="patch" \ + EPATCH_FORCE="yes" \ + epatch "${WORKDIR}/firefox" + + epatch "${FILESDIR}"/${PN}-32.0-hppa-js-configure.patch # bug 524556 + epatch "${FILESDIR}"/${PN}-31.0-webm-disallow-negative-samples.patch # bug 527010 + + # Allow user to apply any additional patches without modifing ebuild + epatch_user + + # Enable gnomebreakpad + if use debug ; then + sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \ + "${S}"/build/unix/run-mozilla.sh || die "sed failed!" + fi + + # Ensure that our plugins dir is enabled as default + sed -i -e "s:/usr/lib/mozilla/plugins:/usr/lib/nsbrowser/plugins:" \ + "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 32bit!" + sed -i -e "s:/usr/lib64/mozilla/plugins:/usr/lib64/nsbrowser/plugins:" \ + "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 64bit!" + + # Fix sandbox violations during make clean, bug 372817 + sed -e "s:\(/no-such-file\):${T}\1:g" \ + -i "${S}"/config/rules.mk \ + -i "${S}"/nsprpub/configure{.in,} \ + || die + + # Don't exit with error when some libs are missing which we have in + # system. + sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \ + -i "${S}"/browser/installer/Makefile.in || die + + # Don't error out when there's no files to be removed: + sed 's@\(xargs rm\)$@\1 -f@' \ + -i "${S}"/toolkit/mozapps/installer/packager.mk || die + + eautoreconf + + # Must run autoconf in js/src + cd "${S}"/js/src || die + eautoconf +} + +src_configure() { + MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" + MEXTENSIONS="default" + # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) + # Note: These are for Gentoo Linux use ONLY. For your own distribution, please + # get your own set of keys. + _google_api_key=AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc + + #################################### + # + # mozconfig, CFLAGS and CXXFLAGS setup + # + #################################### + + mozconfig_init + mozconfig_config + + # It doesn't compile on alpha without this LDFLAGS + use alpha && append-ldflags "-Wl,--no-relax" + + # Add full relro support for hardened + use hardened && append-ldflags "-Wl,-z,relro,-z,now" + + # Setup api key for location services + echo -n "${_google_api_key}" > "${S}"/google-api-key + mozconfig_annotate '' --with-google-api-keyfile="${S}/google-api-key" + + mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}" + mozconfig_annotate '' --disable-mailnews + + # Other ff-specific settings + mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME} + + # Allow for a proper pgo build + if use pgo; then + echo "mk_add_options PROFILE_GEN_SCRIPT='\$(PYTHON) \$(OBJDIR)/_profile/pgo/profileserver.py'" >> "${S}"/.mozconfig + fi + + # Finalize and report settings + mozconfig_final + + if [[ $(gcc-major-version) -lt 4 ]]; then + append-cxxflags -fno-stack-protector + elif [[ $(gcc-major-version) -gt 4 || $(gcc-minor-version) -gt 3 ]]; then + if use amd64 || use x86; then + append-flags -mno-avx + fi + fi +} + +src_compile() { + if use pgo; then + addpredict /root + addpredict /etc/gconf + # Reset and cleanup environment variables used by GNOME/XDG + gnome2_environment_reset + + # Firefox tries to use dri stuff when it's run, see bug 380283 + shopt -s nullglob + cards=$(echo -n /dev/dri/card* | sed 's/ /:/g') + if test -z "${cards}"; then + cards=$(echo -n /dev/ati/card* /dev/nvidiactl* | sed 's/ /:/g') + if test -n "${cards}"; then + # Binary drivers seem to cause access violations anyway, so + # let's use indirect rendering so that the device files aren't + # touched at all. See bug 394715. + export LIBGL_ALWAYS_INDIRECT=1 + fi + fi + shopt -u nullglob + addpredict "${cards}" + + CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \ + MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL}" \ + Xemake -f client.mk profiledbuild || die "Xemake failed" + else + CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \ + MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL}" \ + emake -f client.mk + fi + +} + +src_install() { + MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" + DICTPATH="\"${EPREFIX}/usr/share/myspell\"" + + # MOZ_BUILD_ROOT, and hence OBJ_DIR change depending on arch, compiler, pgo, etc. + local obj_dir="$(echo */config.log)" + obj_dir="${obj_dir%/*}" + cd "${S}/${obj_dir}" || die + + # Pax mark xpcshell for hardened support, only used for startupcache creation. + pax-mark m "${S}/${obj_dir}"/dist/bin/xpcshell + + # Add our default prefs for firefox + cp "${FILESDIR}"/gentoo-default-prefs.js-1 \ + "${S}/${obj_dir}/dist/bin/browser/defaults/preferences/all-gentoo.js" \ + || die + + # Set default path to search for dictionaries. + echo "pref(\"spellchecker.dictionary_path\", ${DICTPATH});" \ + >> "${S}/${obj_dir}/dist/bin/browser/defaults/preferences/all-gentoo.js" \ + || die + + echo "pref(\"extensions.autoDisableScopes\", 3);" >> \ + "${S}/${obj_dir}/dist/bin/browser/defaults/preferences/all-gentoo.js" \ + || die + + MOZ_MAKE_FLAGS="${MAKEOPTS}" \ + emake DESTDIR="${D}" install + + # Install language packs + mozlinguas_src_install + + local size sizes icon_path icon name + if use bindist; then + sizes="16 32 48" + icon_path="${S}/browser/branding/aurora" + # Firefox's new rapid release cycle means no more codenames + # Let's just stick with this one... + icon="aurora" + name="Aurora" + else + sizes="16 22 24 32 256" + icon_path="${S}/browser/branding/official" + icon="${PN}" + name="Mozilla Firefox" + fi + + # Install icons and .desktop for menu entry + for size in ${sizes}; do + insinto "/usr/share/icons/hicolor/${size}x${size}/apps" + newins "${icon_path}/default${size}.png" "${icon}.png" + done + # The 128x128 icon has a different name + insinto "/usr/share/icons/hicolor/128x128/apps" + newins "${icon_path}/mozicon128.png" "${icon}.png" + # Install a 48x48 icon into /usr/share/pixmaps for legacy DEs + newicon "${icon_path}/content/icon48.png" "${icon}.png" + newmenu "${FILESDIR}/icon/${PN}.desktop" "${PN}.desktop" + sed -i -e "s:@NAME@:${name}:" -e "s:@ICON@:${icon}:" \ + "${ED}/usr/share/applications/${PN}.desktop" || die + + # Add StartupNotify=true bug 237317 + if use startup-notification ; then + echo "StartupNotify=true"\ + >> "${ED}/usr/share/applications/${PN}.desktop" \ + || die + fi + + # Required in order to use plugins and even run firefox on hardened. + pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/{firefox,firefox-bin,plugin-container} + # Required in order for jit to work on hardened, as of firefox-31 + use jit && pax-mark p "${ED}"${MOZILLA_FIVE_HOME}/{firefox,firefox-bin} + + if use minimal; then + rm -r "${ED}"/usr/include "${ED}${MOZILLA_FIVE_HOME}"/{idl,include,lib,sdk} \ + || die "Failed to remove sdk and headers" + fi + + # very ugly hack to make firefox not sigbus on sparc + # FIXME: is this still needed?? + use sparc && { sed -e 's/Firefox/FirefoxGentoo/g' \ + -i "${ED}/${MOZILLA_FIVE_HOME}/application.ini" \ + || die "sparc sed failed"; } + + # revdep-rebuild entry + insinto /etc/revdep-rebuild + echo "SEARCH_DIRS_MASK=${MOZILLA_FIVE_HOME}" >> ${T}/10firefox + doins "${T}"/10${PN} || die +} + +pkg_preinst() { + gnome2_icon_savelist +} + +pkg_postinst() { + # Update mimedb for the new .desktop file + fdo-mime_desktop_database_update + gnome2_icon_cache_update +} + +pkg_postrm() { + gnome2_icon_cache_update +} diff --git a/www-client/firefox/firefox-31.2.0.ebuild b/www-client/firefox/firefox-31.2.0.ebuild deleted file mode 100644 index 411cef207083..000000000000 --- a/www-client/firefox/firefox-31.2.0.ebuild +++ /dev/null @@ -1,376 +0,0 @@ -# Copyright 1999-2014 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/www-client/firefox/firefox-31.2.0.ebuild,v 1.3 2014/11/02 10:25:40 swift Exp $ - -EAPI="5" -VIRTUALX_REQUIRED="pgo" -WANT_AUTOCONF="2.1" -MOZ_ESR="1" - -# This list can be updated with scripts/get_langs.sh from the mozilla overlay -MOZ_LANGS=( af ar as ast be bg bn-BD bn-IN br bs ca cs csb cy da de el en -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 gu-IN he hi-IN hr hu hy-AM id is it ja kk km kn ko ku lt lv mai mk ml mr -nb-NO nl nn-NO or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq sr sv-SE ta te -th tr uk vi xh zh-CN zh-TW zu ) - -# Convert the ebuild version to the upstream mozilla version, used by mozlinguas -MOZ_PV="${PV/_alpha/a}" # Handle alpha for SRC_URI -MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI -MOZ_PV="${MOZ_PV/_rc/rc}" # Handle rc for SRC_URI - -if [[ ${MOZ_ESR} == 1 ]]; then - # ESR releases have slightly version numbers - MOZ_PV="${MOZ_PV}esr" -fi - -# Patch version -PATCH="${PN}-31.0-patches-0.2" -# Upstream ftp release URI that's used by mozlinguas.eclass -# We don't use the http mirror because it deletes old tarballs. -MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/" -MOZ_HTTP_URI="http://ftp.mozilla.org/pub/${PN}/releases/" - -MOZCONFIG_OPTIONAL_WIFI=1 -MOZCONFIG_OPTIONAL_JIT="enabled" - -inherit check-reqs flag-o-matic toolchain-funcs eutils gnome2-utils mozconfig-v5.31 multilib pax-utils fdo-mime autotools virtualx mozlinguas - -DESCRIPTION="Firefox Web Browser" -HOMEPAGE="http://www.mozilla.com/firefox" - -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" -SLOT="0" -LICENSE="MPL-2.0 GPL-2 LGPL-2.1" -IUSE="bindist hardened +minimal pgo selinux test" - -# More URIs appended below... -SRC_URI="${SRC_URI} - http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar.xz - http://dev.gentoo.org/~axs/distfiles/${PATCH}.tar.xz" - -ASM_DEPEND=">=dev-lang/yasm-1.1" - -CDEPEND=" - >=dev-libs/nss-3.16.2 - >=dev-libs/nspr-4.10.6 -" - -DEPEND="${CDEPEND} - pgo? ( - >=sys-devel/gcc-4.5 ) - amd64? ( ${ASM_DEPEND} - virtual/opengl ) - x86? ( ${ASM_DEPEND} - virtual/opengl )" - -RDEPEND="${CDEPEND} - selinux? ( sec-policy/selinux-mozilla ) -" - -# No source releases for alpha|beta -if [[ ${PV} =~ alpha ]]; then - CHANGESET="8a3042764de7" - SRC_URI="${SRC_URI} - http://dev.gentoo.org/~nirbheek/mozilla/firefox/firefox-${MOZ_PV}_${CHANGESET}.source.tar.bz2" - S="${WORKDIR}/mozilla-aurora-${CHANGESET}" -elif [[ ${PV} =~ beta ]]; then - S="${WORKDIR}/mozilla-beta" - SRC_URI="${SRC_URI} - ${MOZ_FTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2 - ${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2" -else - SRC_URI="${SRC_URI} - ${MOZ_FTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2 - ${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2" - if [[ ${MOZ_ESR} == 1 ]]; then - S="${WORKDIR}/mozilla-esr${PV%%.*}" - else - S="${WORKDIR}/mozilla-release" - fi -fi - -QA_PRESTRIPPED="usr/$(get_libdir)/${PN}/firefox" - -pkg_setup() { - moz_pkgsetup - - # Avoid PGO profiling problems due to enviroment leakage - # These should *always* be cleaned up anyway - unset DBUS_SESSION_BUS_ADDRESS \ - DISPLAY \ - ORBIT_SOCKETDIR \ - SESSION_MANAGER \ - XDG_SESSION_COOKIE \ - XAUTHORITY - - if ! use bindist; then - einfo - elog "You are enabling official branding. You may not redistribute this build" - elog "to any users on your network or the internet. Doing so puts yourself into" - elog "a legal problem with Mozilla Foundation" - elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag" - fi - - if use pgo; then - einfo - ewarn "You will do a double build for profile guided optimization." - ewarn "This will result in your build taking at least twice as long as before." - fi -} - -pkg_pretend() { - # Ensure we have enough disk space to compile - if use pgo || use debug || use test ; then - CHECKREQS_DISK_BUILD="8G" - else - CHECKREQS_DISK_BUILD="4G" - fi - check-reqs_pkg_setup - - if use jit && [[ -n ${PROFILE_IS_HARDENED} ]]; then - ewarn "You are emerging this package on a hardened profile with USE=jit enabled." - ewarn "This is horribly insecure as it disables all PAGEEXEC restrictions." - ewarn "Please ensure you know what you are doing. If you don't, please consider" - ewarn "emerging the package with USE=-jit" - fi -} - -src_unpack() { - unpack ${A} - - # Unpack language packs - mozlinguas_src_unpack -} - -src_prepare() { - # Apply our patches - EPATCH_SUFFIX="patch" \ - EPATCH_FORCE="yes" \ - epatch "${WORKDIR}/firefox" - - epatch "${FILESDIR}"/${PN}-32.0-hppa-js-configure.patch # bug 524556 - - # Allow user to apply any additional patches without modifing ebuild - epatch_user - - # Enable gnomebreakpad - if use debug ; then - sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \ - "${S}"/build/unix/run-mozilla.sh || die "sed failed!" - fi - - # Ensure that our plugins dir is enabled as default - sed -i -e "s:/usr/lib/mozilla/plugins:/usr/lib/nsbrowser/plugins:" \ - "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 32bit!" - sed -i -e "s:/usr/lib64/mozilla/plugins:/usr/lib64/nsbrowser/plugins:" \ - "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 64bit!" - - # Fix sandbox violations during make clean, bug 372817 - sed -e "s:\(/no-such-file\):${T}\1:g" \ - -i "${S}"/config/rules.mk \ - -i "${S}"/nsprpub/configure{.in,} \ - || die - - # Don't exit with error when some libs are missing which we have in - # system. - sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \ - -i "${S}"/browser/installer/Makefile.in || die - - # Don't error out when there's no files to be removed: - sed 's@\(xargs rm\)$@\1 -f@' \ - -i "${S}"/toolkit/mozapps/installer/packager.mk || die - - eautoreconf - - # Must run autoconf in js/src - cd "${S}"/js/src || die - eautoconf -} - -src_configure() { - MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - MEXTENSIONS="default" - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please - # get your own set of keys. - _google_api_key=AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc - - #################################### - # - # mozconfig, CFLAGS and CXXFLAGS setup - # - #################################### - - mozconfig_init - mozconfig_config - - # It doesn't compile on alpha without this LDFLAGS - use alpha && append-ldflags "-Wl,--no-relax" - - # Add full relro support for hardened - use hardened && append-ldflags "-Wl,-z,relro,-z,now" - - # Setup api key for location services - echo -n "${_google_api_key}" > "${S}"/google-api-key - mozconfig_annotate '' --with-google-api-keyfile="${S}/google-api-key" - - mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}" - mozconfig_annotate '' --disable-mailnews - - # Other ff-specific settings - mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME} - - # Allow for a proper pgo build - if use pgo; then - echo "mk_add_options PROFILE_GEN_SCRIPT='\$(PYTHON) \$(OBJDIR)/_profile/pgo/profileserver.py'" >> "${S}"/.mozconfig - fi - - # Finalize and report settings - mozconfig_final - - if [[ $(gcc-major-version) -lt 4 ]]; then - append-cxxflags -fno-stack-protector - elif [[ $(gcc-major-version) -gt 4 || $(gcc-minor-version) -gt 3 ]]; then - if use amd64 || use x86; then - append-flags -mno-avx - fi - fi -} - -src_compile() { - if use pgo; then - addpredict /root - addpredict /etc/gconf - # Reset and cleanup environment variables used by GNOME/XDG - gnome2_environment_reset - - # Firefox tries to use dri stuff when it's run, see bug 380283 - shopt -s nullglob - cards=$(echo -n /dev/dri/card* | sed 's/ /:/g') - if test -z "${cards}"; then - cards=$(echo -n /dev/ati/card* /dev/nvidiactl* | sed 's/ /:/g') - if test -n "${cards}"; then - # Binary drivers seem to cause access violations anyway, so - # let's use indirect rendering so that the device files aren't - # touched at all. See bug 394715. - export LIBGL_ALWAYS_INDIRECT=1 - fi - fi - shopt -u nullglob - addpredict "${cards}" - - CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \ - MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL}" \ - Xemake -f client.mk profiledbuild || die "Xemake failed" - else - CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \ - MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL}" \ - emake -f client.mk - fi - -} - -src_install() { - MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - DICTPATH="\"${EPREFIX}/usr/share/myspell\"" - - # MOZ_BUILD_ROOT, and hence OBJ_DIR change depending on arch, compiler, pgo, etc. - local obj_dir="$(echo */config.log)" - obj_dir="${obj_dir%/*}" - cd "${S}/${obj_dir}" || die - - # Pax mark xpcshell for hardened support, only used for startupcache creation. - pax-mark m "${S}/${obj_dir}"/dist/bin/xpcshell - - # Add our default prefs for firefox - cp "${FILESDIR}"/gentoo-default-prefs.js-1 \ - "${S}/${obj_dir}/dist/bin/browser/defaults/preferences/all-gentoo.js" \ - || die - - # Set default path to search for dictionaries. - echo "pref(\"spellchecker.dictionary_path\", ${DICTPATH});" \ - >> "${S}/${obj_dir}/dist/bin/browser/defaults/preferences/all-gentoo.js" \ - || die - - echo "pref(\"extensions.autoDisableScopes\", 3);" >> \ - "${S}/${obj_dir}/dist/bin/browser/defaults/preferences/all-gentoo.js" \ - || die - - MOZ_MAKE_FLAGS="${MAKEOPTS}" \ - emake DESTDIR="${D}" install - - # Install language packs - mozlinguas_src_install - - local size sizes icon_path icon name - if use bindist; then - sizes="16 32 48" - icon_path="${S}/browser/branding/aurora" - # Firefox's new rapid release cycle means no more codenames - # Let's just stick with this one... - icon="aurora" - name="Aurora" - else - sizes="16 22 24 32 256" - icon_path="${S}/browser/branding/official" - icon="${PN}" - name="Mozilla Firefox" - fi - - # Install icons and .desktop for menu entry - for size in ${sizes}; do - insinto "/usr/share/icons/hicolor/${size}x${size}/apps" - newins "${icon_path}/default${size}.png" "${icon}.png" - done - # The 128x128 icon has a different name - insinto "/usr/share/icons/hicolor/128x128/apps" - newins "${icon_path}/mozicon128.png" "${icon}.png" - # Install a 48x48 icon into /usr/share/pixmaps for legacy DEs - newicon "${icon_path}/content/icon48.png" "${icon}.png" - newmenu "${FILESDIR}/icon/${PN}.desktop" "${PN}.desktop" - sed -i -e "s:@NAME@:${name}:" -e "s:@ICON@:${icon}:" \ - "${ED}/usr/share/applications/${PN}.desktop" || die - - # Add StartupNotify=true bug 237317 - if use startup-notification ; then - echo "StartupNotify=true"\ - >> "${ED}/usr/share/applications/${PN}.desktop" \ - || die - fi - - # Required in order to use plugins and even run firefox on hardened. - pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/{firefox,firefox-bin,plugin-container} - # Required in order for jit to work on hardened, as of firefox-31 - use jit && pax-mark p "${ED}"${MOZILLA_FIVE_HOME}/{firefox,firefox-bin} - - if use minimal; then - rm -r "${ED}"/usr/include "${ED}${MOZILLA_FIVE_HOME}"/{idl,include,lib,sdk} \ - || die "Failed to remove sdk and headers" - fi - - # very ugly hack to make firefox not sigbus on sparc - # FIXME: is this still needed?? - use sparc && { sed -e 's/Firefox/FirefoxGentoo/g' \ - -i "${ED}/${MOZILLA_FIVE_HOME}/application.ini" \ - || die "sparc sed failed"; } - - # revdep-rebuild entry - insinto /etc/revdep-rebuild - echo "SEARCH_DIRS_MASK=${MOZILLA_FIVE_HOME}" >> ${T}/10firefox - doins "${T}"/10${PN} || die -} - -pkg_preinst() { - gnome2_icon_savelist -} - -pkg_postinst() { - # Update mimedb for the new .desktop file - fdo-mime_desktop_database_update - gnome2_icon_cache_update -} - -pkg_postrm() { - gnome2_icon_cache_update -} diff --git a/www-client/firefox/firefox-33.0-r1.ebuild b/www-client/firefox/firefox-33.0-r1.ebuild new file mode 100644 index 000000000000..778a2d2f91ca --- /dev/null +++ b/www-client/firefox/firefox-33.0-r1.ebuild @@ -0,0 +1,377 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/www-client/firefox/firefox-33.0-r1.ebuild,v 1.1 2014/11/05 23:18:28 axs Exp $ + +EAPI="5" +VIRTUALX_REQUIRED="pgo" +WANT_AUTOCONF="2.1" +MOZ_ESR="" + +# This list can be updated with scripts/get_langs.sh from the mozilla overlay +MOZ_LANGS=( af ar as ast be bg bn-BD bn-IN br bs ca cs csb cy da de el en +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 gu-IN he hi-IN hr hu hy-AM id is it ja kk km kn ko ku lt lv mai mk ml mr +nb-NO nl nn-NO or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq sr sv-SE ta te +th tr uk vi xh zh-CN zh-TW zu ) + +# Convert the ebuild version to the upstream mozilla version, used by mozlinguas +MOZ_PV="${PV/_alpha/a}" # Handle alpha for SRC_URI +MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI +MOZ_PV="${MOZ_PV/_rc/rc}" # Handle rc for SRC_URI + +if [[ ${MOZ_ESR} == 1 ]]; then + # ESR releases have slightly version numbers + MOZ_PV="${MOZ_PV}esr" +fi + +# Patch version +PATCH="${PN}-31.0-patches-0.2" +# Upstream ftp release URI that's used by mozlinguas.eclass +# We don't use the http mirror because it deletes old tarballs. +MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/" +MOZ_HTTP_URI="http://ftp.mozilla.org/pub/${PN}/releases/" + +MOZCONFIG_OPTIONAL_WIFI=1 +MOZCONFIG_OPTIONAL_JIT="enabled" + +inherit check-reqs flag-o-matic toolchain-funcs eutils gnome2-utils mozconfig-v5.33 multilib pax-utils fdo-mime autotools virtualx mozlinguas + +DESCRIPTION="Firefox Web Browser" +HOMEPAGE="http://www.mozilla.com/firefox" + +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" +SLOT="0" +LICENSE="MPL-2.0 GPL-2 LGPL-2.1" +IUSE="bindist hardened +minimal pgo test" + +# More URIs appended below... +SRC_URI="${SRC_URI} + http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar.xz + http://dev.gentoo.org/~axs/distfiles/${PATCH}.tar.xz" + +ASM_DEPEND=">=dev-lang/yasm-1.1" + +RDEPEND=" + >=dev-libs/nss-3.17.1 + >=dev-libs/nspr-4.10.6 +" + +DEPEND="${RDEPEND} + pgo? ( + >=sys-devel/gcc-4.5 ) + amd64? ( ${ASM_DEPEND} + virtual/opengl ) + x86? ( ${ASM_DEPEND} + virtual/opengl )" + +# No source releases for alpha|beta +if [[ ${PV} =~ alpha ]]; then + CHANGESET="8a3042764de7" + SRC_URI="${SRC_URI} + http://dev.gentoo.org/~nirbheek/mozilla/firefox/firefox-${MOZ_PV}_${CHANGESET}.source.tar.bz2" + S="${WORKDIR}/mozilla-aurora-${CHANGESET}" +elif [[ ${PV} =~ beta ]]; then + S="${WORKDIR}/mozilla-beta" + SRC_URI="${SRC_URI} + ${MOZ_FTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2 + ${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2" +else + SRC_URI="${SRC_URI} + ${MOZ_FTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2 + ${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2" + if [[ ${MOZ_ESR} == 1 ]]; then + S="${WORKDIR}/mozilla-esr${PV%%.*}" + else + S="${WORKDIR}/mozilla-release" + fi +fi + +QA_PRESTRIPPED="usr/$(get_libdir)/${PN}/firefox" + +pkg_setup() { + moz_pkgsetup + + # Avoid PGO profiling problems due to enviroment leakage + # These should *always* be cleaned up anyway + unset DBUS_SESSION_BUS_ADDRESS \ + DISPLAY \ + ORBIT_SOCKETDIR \ + SESSION_MANAGER \ + XDG_SESSION_COOKIE \ + XAUTHORITY + + if ! use bindist; then + einfo + elog "You are enabling official branding. You may not redistribute this build" + elog "to any users on your network or the internet. Doing so puts yourself into" + elog "a legal problem with Mozilla Foundation" + elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag" + fi + + if use pgo; then + einfo + ewarn "You will do a double build for profile guided optimization." + ewarn "This will result in your build taking at least twice as long as before." + fi +} + +pkg_pretend() { + # Ensure we have enough disk space to compile + if use pgo || use debug || use test ; then + CHECKREQS_DISK_BUILD="8G" + else + CHECKREQS_DISK_BUILD="4G" + fi + check-reqs_pkg_setup + + if use jit && [[ -n ${PROFILE_IS_HARDENED} ]]; then + ewarn "You are emerging this package on a hardened profile with USE=jit enabled." + ewarn "This is horribly insecure as it disables all PAGEEXEC restrictions." + ewarn "Please ensure you know what you are doing. If you don't, please consider" + ewarn "emerging the package with USE=-jit" + fi +} + +src_unpack() { + unpack ${A} + + # Unpack language packs + mozlinguas_src_unpack +} + +src_prepare() { + # Apply our patches + EPATCH_SUFFIX="patch" \ + EPATCH_FORCE="yes" \ + EPATCH_EXCLUDE="8000_gcc49_mozbug999496_ff31.patch" \ + epatch "${WORKDIR}/firefox" + + epatch "${FILESDIR}"/${P}-jemalloc-configure.patch + epatch "${FILESDIR}"/${PN}-32.0-hppa-js-configure.patch # bug 524556 + epatch "${FILESDIR}"/${PN}-31.0-webm-disallow-negative-samples.patch # bug 527010 + + # Allow user to apply any additional patches without modifing ebuild + epatch_user + + # Enable gnomebreakpad + if use debug ; then + sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \ + "${S}"/build/unix/run-mozilla.sh || die "sed failed!" + fi + + # Ensure that our plugins dir is enabled as default + sed -i -e "s:/usr/lib/mozilla/plugins:/usr/lib/nsbrowser/plugins:" \ + "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 32bit!" + sed -i -e "s:/usr/lib64/mozilla/plugins:/usr/lib64/nsbrowser/plugins:" \ + "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 64bit!" + + # Fix sandbox violations during make clean, bug 372817 + sed -e "s:\(/no-such-file\):${T}\1:g" \ + -i "${S}"/config/rules.mk \ + -i "${S}"/nsprpub/configure{.in,} \ + || die + + # Don't exit with error when some libs are missing which we have in + # system. + sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \ + -i "${S}"/browser/installer/Makefile.in || die + + # Don't error out when there's no files to be removed: + sed 's@\(xargs rm\)$@\1 -f@' \ + -i "${S}"/toolkit/mozapps/installer/packager.mk || die + + eautoreconf + + # Must run autoconf in js/src + cd "${S}"/js/src || die + eautoconf + + # Need to update jemalloc's configure + cd "${S}"/memory/jemalloc/src || die + WANT_AUTOCONF= eautoconf +} + +src_configure() { + MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" + MEXTENSIONS="default" + # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) + # Note: These are for Gentoo Linux use ONLY. For your own distribution, please + # get your own set of keys. + _google_api_key=AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc + + #################################### + # + # mozconfig, CFLAGS and CXXFLAGS setup + # + #################################### + + mozconfig_init + mozconfig_config + + # It doesn't compile on alpha without this LDFLAGS + use alpha && append-ldflags "-Wl,--no-relax" + + # Add full relro support for hardened + use hardened && append-ldflags "-Wl,-z,relro,-z,now" + + # Setup api key for location services + echo -n "${_google_api_key}" > "${S}"/google-api-key + mozconfig_annotate '' --with-google-api-keyfile="${S}/google-api-key" + + mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}" + mozconfig_annotate '' --disable-mailnews + + # Other ff-specific settings + mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME} + + # Allow for a proper pgo build + if use pgo; then + echo "mk_add_options PROFILE_GEN_SCRIPT='\$(PYTHON) \$(OBJDIR)/_profile/pgo/profileserver.py'" >> "${S}"/.mozconfig + fi + + # Finalize and report settings + mozconfig_final + + if [[ $(gcc-major-version) -lt 4 ]]; then + append-cxxflags -fno-stack-protector + elif [[ $(gcc-major-version) -gt 4 || $(gcc-minor-version) -gt 3 ]]; then + if use amd64 || use x86; then + append-flags -mno-avx + fi + fi +} + +src_compile() { + if use pgo; then + addpredict /root + addpredict /etc/gconf + # Reset and cleanup environment variables used by GNOME/XDG + gnome2_environment_reset + + # Firefox tries to use dri stuff when it's run, see bug 380283 + shopt -s nullglob + cards=$(echo -n /dev/dri/card* | sed 's/ /:/g') + if test -z "${cards}"; then + cards=$(echo -n /dev/ati/card* /dev/nvidiactl* | sed 's/ /:/g') + if test -n "${cards}"; then + # Binary drivers seem to cause access violations anyway, so + # let's use indirect rendering so that the device files aren't + # touched at all. See bug 394715. + export LIBGL_ALWAYS_INDIRECT=1 + fi + fi + shopt -u nullglob + addpredict "${cards}" + + CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \ + MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL}" \ + Xemake -f client.mk profiledbuild || die "Xemake failed" + else + CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \ + MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL}" \ + emake -f client.mk + fi + +} + +src_install() { + MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" + DICTPATH="\"${EPREFIX}/usr/share/myspell\"" + + # MOZ_BUILD_ROOT, and hence OBJ_DIR change depending on arch, compiler, pgo, etc. + local obj_dir="$(echo */config.log)" + obj_dir="${obj_dir%/*}" + cd "${S}/${obj_dir}" || die + + # Pax mark xpcshell for hardened support, only used for startupcache creation. + pax-mark m "${S}/${obj_dir}"/dist/bin/xpcshell + + # Add our default prefs for firefox + cp "${FILESDIR}"/gentoo-default-prefs.js-1 \ + "${S}/${obj_dir}/dist/bin/browser/defaults/preferences/all-gentoo.js" \ + || die + + # Set default path to search for dictionaries. + echo "pref(\"spellchecker.dictionary_path\", ${DICTPATH});" \ + >> "${S}/${obj_dir}/dist/bin/browser/defaults/preferences/all-gentoo.js" \ + || die + + echo "pref(\"extensions.autoDisableScopes\", 3);" >> \ + "${S}/${obj_dir}/dist/bin/browser/defaults/preferences/all-gentoo.js" \ + || die + + MOZ_MAKE_FLAGS="${MAKEOPTS}" \ + emake DESTDIR="${D}" install + + # Install language packs + mozlinguas_src_install + + local size sizes icon_path icon name + if use bindist; then + sizes="16 32 48" + icon_path="${S}/browser/branding/aurora" + # Firefox's new rapid release cycle means no more codenames + # Let's just stick with this one... + icon="aurora" + name="Aurora" + else + sizes="16 22 24 32 256" + icon_path="${S}/browser/branding/official" + icon="${PN}" + name="Mozilla Firefox" + fi + + # Install icons and .desktop for menu entry + for size in ${sizes}; do + insinto "/usr/share/icons/hicolor/${size}x${size}/apps" + newins "${icon_path}/default${size}.png" "${icon}.png" + done + # The 128x128 icon has a different name + insinto "/usr/share/icons/hicolor/128x128/apps" + newins "${icon_path}/mozicon128.png" "${icon}.png" + # Install a 48x48 icon into /usr/share/pixmaps for legacy DEs + newicon "${icon_path}/content/icon48.png" "${icon}.png" + newmenu "${FILESDIR}/icon/${PN}.desktop" "${PN}.desktop" + sed -i -e "s:@NAME@:${name}:" -e "s:@ICON@:${icon}:" \ + "${ED}/usr/share/applications/${PN}.desktop" || die + + # Add StartupNotify=true bug 237317 + if use startup-notification ; then + echo "StartupNotify=true"\ + >> "${ED}/usr/share/applications/${PN}.desktop" \ + || die + fi + + # Required in order to use plugins and even run firefox on hardened. + pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/{firefox,firefox-bin,plugin-container} + + if use minimal; then + rm -r "${ED}"/usr/include "${ED}${MOZILLA_FIVE_HOME}"/{idl,include,lib,sdk} \ + || die "Failed to remove sdk and headers" + fi + + # very ugly hack to make firefox not sigbus on sparc + # FIXME: is this still needed?? + use sparc && { sed -e 's/Firefox/FirefoxGentoo/g' \ + -i "${ED}/${MOZILLA_FIVE_HOME}/application.ini" \ + || die "sparc sed failed"; } + + # revdep-rebuild entry + insinto /etc/revdep-rebuild + echo "SEARCH_DIRS_MASK=${MOZILLA_FIVE_HOME}" >> ${T}/10firefox + doins "${T}"/10${PN} || die +} + +pkg_preinst() { + gnome2_icon_savelist +} + +pkg_postinst() { + # Update mimedb for the new .desktop file + fdo-mime_desktop_database_update + gnome2_icon_cache_update +} + +pkg_postrm() { + gnome2_icon_cache_update +} diff --git a/www-client/firefox/firefox-33.0.ebuild b/www-client/firefox/firefox-33.0.ebuild deleted file mode 100644 index 7b9a7122ce05..000000000000 --- a/www-client/firefox/firefox-33.0.ebuild +++ /dev/null @@ -1,381 +0,0 @@ -# Copyright 1999-2014 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/www-client/firefox/firefox-33.0.ebuild,v 1.3 2014/11/02 10:25:40 swift Exp $ - -EAPI="5" -VIRTUALX_REQUIRED="pgo" -WANT_AUTOCONF="2.1" -MOZ_ESR="" - -# This list can be updated with scripts/get_langs.sh from the mozilla overlay -MOZ_LANGS=( af ar as ast be bg bn-BD bn-IN br bs ca cs csb cy da de el en -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 gu-IN he hi-IN hr hu hy-AM id is it ja kk km kn ko ku lt lv mai mk ml mr -nb-NO nl nn-NO or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq sr sv-SE ta te -th tr uk vi xh zh-CN zh-TW zu ) - -# Convert the ebuild version to the upstream mozilla version, used by mozlinguas -MOZ_PV="${PV/_alpha/a}" # Handle alpha for SRC_URI -MOZ_PV="${MOZ_PV/_beta/b}" # Handle beta for SRC_URI -MOZ_PV="${MOZ_PV/_rc/rc}" # Handle rc for SRC_URI - -if [[ ${MOZ_ESR} == 1 ]]; then - # ESR releases have slightly version numbers - MOZ_PV="${MOZ_PV}esr" -fi - -# Patch version -PATCH="${PN}-31.0-patches-0.2" -# Upstream ftp release URI that's used by mozlinguas.eclass -# We don't use the http mirror because it deletes old tarballs. -MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/" -MOZ_HTTP_URI="http://ftp.mozilla.org/pub/${PN}/releases/" - -MOZCONFIG_OPTIONAL_WIFI=1 -MOZCONFIG_OPTIONAL_JIT="enabled" - -inherit check-reqs flag-o-matic toolchain-funcs eutils gnome2-utils mozconfig-v5.33 multilib pax-utils fdo-mime autotools virtualx mozlinguas - -DESCRIPTION="Firefox Web Browser" -HOMEPAGE="http://www.mozilla.com/firefox" - -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" -SLOT="0" -LICENSE="MPL-2.0 GPL-2 LGPL-2.1" -IUSE="bindist hardened +minimal pgo selinux test" - -# More URIs appended below... -SRC_URI="${SRC_URI} - http://dev.gentoo.org/~anarchy/mozilla/patchsets/${PATCH}.tar.xz - http://dev.gentoo.org/~axs/distfiles/${PATCH}.tar.xz" - -ASM_DEPEND=">=dev-lang/yasm-1.1" - -# Mesa 7.10 needed for WebGL + bugfixes -CDEPEND=" - >=dev-libs/nss-3.17.1 - >=dev-libs/nspr-4.10.6 -" - -DEPEND="${CDEPEND} - pgo? ( - >=sys-devel/gcc-4.5 ) - amd64? ( ${ASM_DEPEND} - virtual/opengl ) - x86? ( ${ASM_DEPEND} - virtual/opengl )" - -RDEPEND="${CDEPEND} - selinux? ( sec-policy/selinux-mozilla ) -" - -# No source releases for alpha|beta -if [[ ${PV} =~ alpha ]]; then - CHANGESET="8a3042764de7" - SRC_URI="${SRC_URI} - http://dev.gentoo.org/~nirbheek/mozilla/firefox/firefox-${MOZ_PV}_${CHANGESET}.source.tar.bz2" - S="${WORKDIR}/mozilla-aurora-${CHANGESET}" -elif [[ ${PV} =~ beta ]]; then - S="${WORKDIR}/mozilla-beta" - SRC_URI="${SRC_URI} - ${MOZ_FTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2 - ${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2" -else - SRC_URI="${SRC_URI} - ${MOZ_FTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2 - ${MOZ_HTTP_URI}/${MOZ_PV}/source/firefox-${MOZ_PV}.source.tar.bz2" - if [[ ${MOZ_ESR} == 1 ]]; then - S="${WORKDIR}/mozilla-esr${PV%%.*}" - else - S="${WORKDIR}/mozilla-release" - fi -fi - -QA_PRESTRIPPED="usr/$(get_libdir)/${PN}/firefox" - -pkg_setup() { - moz_pkgsetup - - # Avoid PGO profiling problems due to enviroment leakage - # These should *always* be cleaned up anyway - unset DBUS_SESSION_BUS_ADDRESS \ - DISPLAY \ - ORBIT_SOCKETDIR \ - SESSION_MANAGER \ - XDG_SESSION_COOKIE \ - XAUTHORITY - - if ! use bindist; then - einfo - elog "You are enabling official branding. You may not redistribute this build" - elog "to any users on your network or the internet. Doing so puts yourself into" - elog "a legal problem with Mozilla Foundation" - elog "You can disable it by emerging ${PN} _with_ the bindist USE-flag" - fi - - if use pgo; then - einfo - ewarn "You will do a double build for profile guided optimization." - ewarn "This will result in your build taking at least twice as long as before." - fi -} - -pkg_pretend() { - # Ensure we have enough disk space to compile - if use pgo || use debug || use test ; then - CHECKREQS_DISK_BUILD="8G" - else - CHECKREQS_DISK_BUILD="4G" - fi - check-reqs_pkg_setup - - if use jit && [[ -n ${PROFILE_IS_HARDENED} ]]; then - ewarn "You are emerging this package on a hardened profile with USE=jit enabled." - ewarn "This is horribly insecure as it disables all PAGEEXEC restrictions." - ewarn "Please ensure you know what you are doing. If you don't, please consider" - ewarn "emerging the package with USE=-jit" - fi -} - -src_unpack() { - unpack ${A} - - # Unpack language packs - mozlinguas_src_unpack -} - -src_prepare() { - # Apply our patches - EPATCH_SUFFIX="patch" \ - EPATCH_FORCE="yes" \ - EPATCH_EXCLUDE="8000_gcc49_mozbug999496_ff31.patch" \ - epatch "${WORKDIR}/firefox" - - epatch "${FILESDIR}"/${P}-jemalloc-configure.patch - epatch "${FILESDIR}"/${PN}-32.0-hppa-js-configure.patch # bug 524556 - - # Allow user to apply any additional patches without modifing ebuild - epatch_user - - # Enable gnomebreakpad - if use debug ; then - sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \ - "${S}"/build/unix/run-mozilla.sh || die "sed failed!" - fi - - # Ensure that our plugins dir is enabled as default - sed -i -e "s:/usr/lib/mozilla/plugins:/usr/lib/nsbrowser/plugins:" \ - "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 32bit!" - sed -i -e "s:/usr/lib64/mozilla/plugins:/usr/lib64/nsbrowser/plugins:" \ - "${S}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 64bit!" - - # Fix sandbox violations during make clean, bug 372817 - sed -e "s:\(/no-such-file\):${T}\1:g" \ - -i "${S}"/config/rules.mk \ - -i "${S}"/nsprpub/configure{.in,} \ - || die - - # Don't exit with error when some libs are missing which we have in - # system. - sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \ - -i "${S}"/browser/installer/Makefile.in || die - - # Don't error out when there's no files to be removed: - sed 's@\(xargs rm\)$@\1 -f@' \ - -i "${S}"/toolkit/mozapps/installer/packager.mk || die - - eautoreconf - - # Must run autoconf in js/src - cd "${S}"/js/src || die - eautoconf - - # Need to update jemalloc's configure - cd "${S}"/memory/jemalloc/src || die - WANT_AUTOCONF= eautoconf -} - -src_configure() { - MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - MEXTENSIONS="default" - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please - # get your own set of keys. - _google_api_key=AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc - - #################################### - # - # mozconfig, CFLAGS and CXXFLAGS setup - # - #################################### - - mozconfig_init - mozconfig_config - - # It doesn't compile on alpha without this LDFLAGS - use alpha && append-ldflags "-Wl,--no-relax" - - # Add full relro support for hardened - use hardened && append-ldflags "-Wl,-z,relro,-z,now" - - # Setup api key for location services - echo -n "${_google_api_key}" > "${S}"/google-api-key - mozconfig_annotate '' --with-google-api-keyfile="${S}/google-api-key" - - mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}" - mozconfig_annotate '' --disable-mailnews - - # Other ff-specific settings - mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME} - - # Allow for a proper pgo build - if use pgo; then - echo "mk_add_options PROFILE_GEN_SCRIPT='\$(PYTHON) \$(OBJDIR)/_profile/pgo/profileserver.py'" >> "${S}"/.mozconfig - fi - - # Finalize and report settings - mozconfig_final - - if [[ $(gcc-major-version) -lt 4 ]]; then - append-cxxflags -fno-stack-protector - elif [[ $(gcc-major-version) -gt 4 || $(gcc-minor-version) -gt 3 ]]; then - if use amd64 || use x86; then - append-flags -mno-avx - fi - fi -} - -src_compile() { - if use pgo; then - addpredict /root - addpredict /etc/gconf - # Reset and cleanup environment variables used by GNOME/XDG - gnome2_environment_reset - - # Firefox tries to use dri stuff when it's run, see bug 380283 - shopt -s nullglob - cards=$(echo -n /dev/dri/card* | sed 's/ /:/g') - if test -z "${cards}"; then - cards=$(echo -n /dev/ati/card* /dev/nvidiactl* | sed 's/ /:/g') - if test -n "${cards}"; then - # Binary drivers seem to cause access violations anyway, so - # let's use indirect rendering so that the device files aren't - # touched at all. See bug 394715. - export LIBGL_ALWAYS_INDIRECT=1 - fi - fi - shopt -u nullglob - addpredict "${cards}" - - CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \ - MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL}" \ - Xemake -f client.mk profiledbuild || die "Xemake failed" - else - CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \ - MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL}" \ - emake -f client.mk - fi - -} - -src_install() { - MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - DICTPATH="\"${EPREFIX}/usr/share/myspell\"" - - # MOZ_BUILD_ROOT, and hence OBJ_DIR change depending on arch, compiler, pgo, etc. - local obj_dir="$(echo */config.log)" - obj_dir="${obj_dir%/*}" - cd "${S}/${obj_dir}" || die - - # Pax mark xpcshell for hardened support, only used for startupcache creation. - pax-mark m "${S}/${obj_dir}"/dist/bin/xpcshell - - # Add our default prefs for firefox - cp "${FILESDIR}"/gentoo-default-prefs.js-1 \ - "${S}/${obj_dir}/dist/bin/browser/defaults/preferences/all-gentoo.js" \ - || die - - # Set default path to search for dictionaries. - echo "pref(\"spellchecker.dictionary_path\", ${DICTPATH});" \ - >> "${S}/${obj_dir}/dist/bin/browser/defaults/preferences/all-gentoo.js" \ - || die - - echo "pref(\"extensions.autoDisableScopes\", 3);" >> \ - "${S}/${obj_dir}/dist/bin/browser/defaults/preferences/all-gentoo.js" \ - || die - - MOZ_MAKE_FLAGS="${MAKEOPTS}" \ - emake DESTDIR="${D}" install - - # Install language packs - mozlinguas_src_install - - local size sizes icon_path icon name - if use bindist; then - sizes="16 32 48" - icon_path="${S}/browser/branding/aurora" - # Firefox's new rapid release cycle means no more codenames - # Let's just stick with this one... - icon="aurora" - name="Aurora" - else - sizes="16 22 24 32 256" - icon_path="${S}/browser/branding/official" - icon="${PN}" - name="Mozilla Firefox" - fi - - # Install icons and .desktop for menu entry - for size in ${sizes}; do - insinto "/usr/share/icons/hicolor/${size}x${size}/apps" - newins "${icon_path}/default${size}.png" "${icon}.png" - done - # The 128x128 icon has a different name - insinto "/usr/share/icons/hicolor/128x128/apps" - newins "${icon_path}/mozicon128.png" "${icon}.png" - # Install a 48x48 icon into /usr/share/pixmaps for legacy DEs - newicon "${icon_path}/content/icon48.png" "${icon}.png" - newmenu "${FILESDIR}/icon/${PN}.desktop" "${PN}.desktop" - sed -i -e "s:@NAME@:${name}:" -e "s:@ICON@:${icon}:" \ - "${ED}/usr/share/applications/${PN}.desktop" || die - - # Add StartupNotify=true bug 237317 - if use startup-notification ; then - echo "StartupNotify=true"\ - >> "${ED}/usr/share/applications/${PN}.desktop" \ - || die - fi - - # Required in order to use plugins and even run firefox on hardened. - pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/{firefox,firefox-bin,plugin-container} - - if use minimal; then - rm -r "${ED}"/usr/include "${ED}${MOZILLA_FIVE_HOME}"/{idl,include,lib,sdk} \ - || die "Failed to remove sdk and headers" - fi - - # very ugly hack to make firefox not sigbus on sparc - # FIXME: is this still needed?? - use sparc && { sed -e 's/Firefox/FirefoxGentoo/g' \ - -i "${ED}/${MOZILLA_FIVE_HOME}/application.ini" \ - || die "sparc sed failed"; } - - # revdep-rebuild entry - insinto /etc/revdep-rebuild - echo "SEARCH_DIRS_MASK=${MOZILLA_FIVE_HOME}" >> ${T}/10firefox - doins "${T}"/10${PN} || die -} - -pkg_preinst() { - gnome2_icon_savelist -} - -pkg_postinst() { - # Update mimedb for the new .desktop file - fdo-mime_desktop_database_update - gnome2_icon_cache_update -} - -pkg_postrm() { - gnome2_icon_cache_update -} diff --git a/www-client/seamonkey/ChangeLog b/www-client/seamonkey/ChangeLog index 75f45cf6616d..d0707f81fbf8 100644 --- a/www-client/seamonkey/ChangeLog +++ b/www-client/seamonkey/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for www-client/seamonkey # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/www-client/seamonkey/ChangeLog,v 1.499 2014/11/02 10:28:35 swift Exp $ +# $Header: /var/cvsroot/gentoo-x86/www-client/seamonkey/ChangeLog,v 1.500 2014/11/05 23:18:24 axs Exp $ + +*seamonkey-2.30-r1 (05 Nov 2014) + + 05 Nov 2014; Ian Stakenvicius (_AxS_) + +files/seamonkey-2.30-webm-disallow-negative-samples.patch, + +seamonkey-2.30-r1.ebuild, -seamonkey-2.30.ebuild: + fixed bugs 528062, 527010; moved IUSE=selinux to the eclass 02 Nov 2014; Sven Vermeulen seamonkey-2.26.1.ebuild, seamonkey-2.29.1.ebuild, seamonkey-2.30.ebuild: diff --git a/www-client/seamonkey/Manifest b/www-client/seamonkey/Manifest index e1c3fd36ce6a..a244d8c15b51 100644 --- a/www-client/seamonkey/Manifest +++ b/www-client/seamonkey/Manifest @@ -6,6 +6,7 @@ AUX icon/seamonkey.desktop 288 SHA256 524ae39ffc10b2a950aa344ae6c3f3d9b4a2100969 AUX pixman-supplement.patch 1044 SHA256 c49418d5d8f11aaede0dc4a28923ead4b36d3493a4e5bbba4e9dbd835c27d43e SHA512 460be5d59121b4910799c1b0625c641f67a85dffa258aebf47853ae75a9770764a4a386a5c3e35187d6c84f0297447f2b48fd0fa8f49161e1ede3048ec3fa838 WHIRLPOOL 58d78b646431a7405db40694ebcf118be68b6e0d9686ee5da51269447bebcd9b8d4c3492534199bc861222bc1dbeae10a9042f7e94eb55d632246f0f7619c4c9 AUX seamonkey-2.30-jemalloc-configure.patch 1146 SHA256 0ccc2e7183d66899986d539505d35cfa896749967fe68d32c2371e3059df64a4 SHA512 a527a229be07116354394f39aa42e0e0dbf2c83d347f29b16aba8f704203ad283e361c1535158e4ed564c39cbdb29e3ff77f59e57c0bc91d1c8fd0ca2166d003 WHIRLPOOL 80205e92346886e17e66f7a6be4f811884dfc891ca0cf1c219cfd7459364891df8744f602622941a3b8fbe7e9b6de7ffae495aa1cd26be73073cfb185af26809 AUX seamonkey-2.30-pulseaudio_configure_switch_fix.patch 510 SHA256 dd904fdeaf3282477cc2d104c2b32217ca14a0714378a934bfc91b71b05fc216 SHA512 3cccecdbd8aad8126d565f2d76fe44229a1d23b0640ccfc0496d7c2b4f59078a56277466810931cd2143e2244fddad7fdc175af2e48ed7ad6307c5beb4723dda WHIRLPOOL c021d4f4fbfe6e1eb7d6415cfb6ee6ad40c82be0e329c874f693a9328dae5546a6d659557f075e58459a3134eb40dfcc9bfc4100ee822df7808f139ea20cdcd2 +AUX seamonkey-2.30-webm-disallow-negative-samples.patch 1170 SHA256 33954783d12e32744173c7b7c714e136d4c8271da2a6c47a2a266bc0954515aa SHA512 cbc3bdd42d9a3d33100063908c1ae77a949b8762ce64a14f450276cdc76f09dc3a104d6b7fc52138a0c58417e1c4656ba726aa9e3cced9fd5cbd4799231076c4 WHIRLPOOL f4e5d8d7e16a882d446861e02eac419ac303cafdb28dfb6c2dba78e0658974b121365d15163bb914a96f629e5c61eb2cff0a499cef5a24fc0c843dcd2987e03f DIST enigmail-1.6.1_pre20140112.tar.xz 916028 SHA256 2d89a9186c3ccfc9397c933c6f63c0518224fea0096d7a292dba3765de088149 SHA512 e05d9fcb2dd333cdca487d59a31bf045a568762e6a961267209bb4b5c8b6a0fc5ef8096b970302bc7bac9bc7f963d4a2d3c1d68326c4c18c7e93eb63308b0675 WHIRLPOOL 7a5d6366737fe239b00bcc8d805e6904fd5f9bd9724adbc0ab0f7752ec6f1b8d0bc961c250f8d51366265d685a1c66a3efcb86a23ebbde36152588bac97f576f DIST enigmail-1.7.2.tar.gz 1420346 SHA256 7b3a62e83961bafec1cdac60075aa6c317c8f655a837e31a7d1f3ce6a49fc7d6 SHA512 e121308127d25d658db804bcd49e37b609fe7a52c2b2f4b0e5cd5c90106157642e164b7f9e31ef419e89a60326af93ce007e6d04ecea714e4b933b01007fee10 WHIRLPOOL 8e226445556cbf31dc55c924f8d2367d4a497eff385fb31128be03dd0650d32251e37a99aba9806b1a019cc124b717f2e97a8341bd4e01dcc39be6580fe27a24 DIST firefox-29.0-patches-0.1.tar.xz 4164 SHA256 b1d4517d73356884e1c362e0131bf66721bdd42c791f045db9d2753e7878ae3a SHA512 b2f987f9daaaa9fdd3085f831af1ba6b23e25d720d08771e54d66d77241c29847a3f68dc7fc8f7dc2484b3bf05e41bac23583af68b2a7bc5e713099d368cf35c WHIRLPOOL 3a35159062162e3ad0d8a22c35c0f2964ebb69adc101f8f23ee725ae7c0a349d32cb048cd023c00628c06ab7ef0c5ae26b375459eee3f37fe3b3308de1bdb7fa @@ -92,23 +93,13 @@ DIST seamonkey-2.30-zh-TW.xpi 863385 SHA256 29993aeafcf649561008394400cad3e9cb05 DIST seamonkey-2.30.source.tar.bz2 178435927 SHA256 613eb08d80bf671b390869e9682810d7ae312a9858f6b69da76155f42ff1d516 SHA512 e5ae37b5f6668fe4a064e2e0afd90f168b1074164eb832705641e90837b286ea0e0a32f336fd3813cbc706735ca98ec459a6c33915879c3c3c63760ec910b6df WHIRLPOOL 1a742a49621d47df10491a427292478876e01fbd7af816d0fe58dae1beca24037d8d3d59803db989b7d383ac9030a1d06cc98f76632785370fb6c8220e1a8fa6 EBUILD seamonkey-2.26.1.ebuild 11283 SHA256 e7cdc4a722f31d571452fe3b36eb4ee7886f51564d34c1a114c810cb5c803518 SHA512 a5fe78e2224f90ad9e86c52c7dd6b7c1280a7cf9eee422ca984a5afe68f188ba4ca337d5d2c41b860d0e8eacb5c814d763b593108cb2b5efeb6d875f466a499d WHIRLPOOL 68a6ccd7d3e95e4d654d9509e9e1da01ccf60c7b2930c8d091d4f852fa56bbd4943ae6d51665aaa353e0507da7b90ec5aff51761fbdf59f0cf183cfdfefd6493 EBUILD seamonkey-2.29.1.ebuild 10012 SHA256 8761ba43e96d17cc550cc8bc7f07fcae64d8117f4f2c6185f5feda1e5562e4bc SHA512 024eb49912c97922ce68da4b12224ec503ae4df77fc23e8756aeef4402a9b96c6256148c6bd00989e869ac90ff14acee56587826a33b9c876519289b957721bf WHIRLPOOL 98e279d78e61f0354d2fdf8f709db04b0b0a7e359037aa856f34dedb928ec872e6316ac9ab66b87aac7375feb3f446e7fdc7563013f51150016387fa7fa4014b -EBUILD seamonkey-2.30.ebuild 10748 SHA256 6b779e581118aeb0c9fa51f28feccf4981a23e6b5e5ac60dfb5f434c190ac351 SHA512 631ab82d7d38e6b8a9ecd405c7b18bd425f15548507e6e49f21edc4d93de404cfe7d9df9b43a917f0f6455e80600991670602e772972cddfb9db035bf564d698 WHIRLPOOL 018fdae71d75c48fb912a4567dfbc328a0ac2a0a728cf6044d3b3839fe8072a6e345e9f3adb9213f0db333b95b1fd29b4931e2e3d77d72f5b1c88247f0bfb65d -MISC ChangeLog 70182 SHA256 89f5257d8be4c66977c216e9d27518f4903b34a068f66ca6c45b7b27eb9fb18c SHA512 d632aba90728c3d8563afc07022ac536fe61af60086eef9b4c3bf635f5b3c09d0bb5f9fe52ee3df55e59e87ef6a1a7c82d2eb352c491c32083322cd3ae6baf22 WHIRLPOOL b855b7ae6fa801eded5094ea98df83c2906d4395b2684290de94bda7aa2996dc2aa280ec0ff01e4eb4dc7632a509ce68616004fe84130e6def1dc9cf85c64c78 +EBUILD seamonkey-2.30-r1.ebuild 10198 SHA256 ff109033ed2cae1a9d9590e96ad4689bd4fec4148d9da1ab0c565dfabbe4b6f9 SHA512 ea78195779157dcc88fc310d053490d36083742309e2c3f644ba992b14dc158feae374cbe72c0843190dca584049fe39b7af9ee3127bc211073c7b065a95c05b WHIRLPOOL 52e3d25f2591b2605a0534353debb4735c9c4bbc31da556efa8462beb1246db59bcf1899d3961b21a166825185041a0bc997542b51e1af3d1c318914d33f1980 +MISC ChangeLog 70449 SHA256 d9e7e4818e889d4ed89408c43044218cbe8656e525fc68282f238eb84f3850a9 SHA512 2da002e2de80b3cc0842758556b1d7af79d94631de427f128a9ecee6066db73bdb69bb70438886f76b5d889e281c94019ad6abe8bd83b9a21d799cb7f806c2df WHIRLPOOL dac6a8c438bdc5dba081086722e37aab276eea10ad11f3e1450ea5d263f6688075d429155176c8a7eabc21741f94cb66f1bfd53b614b2fe84779cbb905327751 MISC metadata.xml 1256 SHA256 8d70d8d1613caff81f008e5df2a6d157e7840c8dabb11a2fb80b5d1e48815622 SHA512 aaedbad6b97ec4d743d05d2567063a8240a079893db4be7d680f928962c36fc6191b5363f6ced5bf3ac56267530c0ce12a43e5c6c0bab769993ac823e0d9af83 WHIRLPOOL d4689b5bdca7090456443c9c883cc42c65006aa959adbe5418a4ca753445820059f6fb0eab65afa4d6e6bb1a2e593c4c66a07061d743e3747662f4c4265e4b6e -----BEGIN PGP SIGNATURE----- -Version: GnuPG v2.0 +Version: GnuPG v2 -iQIcBAEBCAAGBQJUVgdUAAoJEC7dUkA7aK9HlqUP/0Kbn7ev1xOP8ySvMs8vKW8c -4Fx3JWnA8KxK3FjqgZkS7ZotNzwdckPTNTtiyTlg++u2C5wSe5Wrhp3dzwqtPIDM -kPUMhpkiwLw6ZcCj55NUaEiVDTbieIWHCgwjyNfPFl1LYYQMe5+2e/EVlnftnZQq -pvmQ4rgmfSSY3Gz+SW5ZPAJAAQHN1xLX5HTcBExz4lNcUXgubgJvRR8MV6SPn+y0 -hUB11Ml1A1Rew8AGqyQ09uxl8hSiC6KagP7WDpWrb9hq52BjxrSrpkxwfTeCRQ91 -ZVva7r975i0xR7YCCGZZwzJYJQbfanpUhISePeWkEP1nRAFpVRDRxSvZITup1AT8 -a4TNdLZ9hJYBcddhoi19RtrWyZBzgtchixPfLUx3MD4j2gdk5d3P1onSyfNFu97y -BOSRIvsIQw5mYg8Pfm4jYVyb3wXRyO0CDmphM6LZicvnWzKCi7Z/ph3xCDtd3FgZ -mq1DwtyGkOH0QcVbUwmI2V2pBYf3LqqJ9qVjOsXUOYsqUHNODmPeA+5RN1qbw//O -pnbsBf/XcFTijcKJyVDOJsRMl5Gf/qyWJoDY7bVxRn2Opr5v0OwKAJ2MKyOGZfSA -0gwrbN8ZJrJ0hia/fSJ00EgWwBdUUAynbHG1jxH3Ukk5THv2jhblT5uQxEZFkqiF -VLfzQCWfvuM3FB9cM52C -=GVUD +iF4EAREIAAYFAlRasEwACgkQ2ugaI38ACPCtJwD/V+qvA4jkAw80hSg28aJpLawY +MenMiA37/52R6c0jAvwBAJPbqUlPuUGhpAL1oiGMoXe7eDXI7crCy0u1uDECXKvU +=kT1H -----END PGP SIGNATURE----- diff --git a/www-client/seamonkey/files/seamonkey-2.30-webm-disallow-negative-samples.patch b/www-client/seamonkey/files/seamonkey-2.30-webm-disallow-negative-samples.patch new file mode 100644 index 000000000000..1a79affc38b9 --- /dev/null +++ b/www-client/seamonkey/files/seamonkey-2.30-webm-disallow-negative-samples.patch @@ -0,0 +1,29 @@ +--- a/mozilla/content/media/webm/WebMReader.cpp 2014-10-20 21:59:39.000000000 -0400 ++++ b/mozilla/content/media/webm/WebMReader.cpp 2014-10-28 09:06:51.959665416 -0400 +@@ -668,7 +668,15 @@ + return true; + } + int32_t keepFrames = frames - skipFrames; ++ if (keepFrames < 0) { ++ NS_WARNING("Int overflow in keepFrames"); ++ return false; ++ } + int samples = keepFrames * channels; ++ if (samples < 0) { ++ NS_WARNING("Int overflow in samples"); ++ return false; ++ } + nsAutoArrayPtr trimBuffer(new AudioDataValue[samples]); + for (int i = 0; i < samples; i++) + trimBuffer[i] = buffer[skipFrames*channels + i]; +@@ -691,6 +699,10 @@ + int32_t keepFrames = frames - discardFrames.value(); + if (keepFrames > 0) { + int samples = keepFrames * channels; ++ if (samples < 0) { ++ NS_WARNING("Int overflow in samples"); ++ return false; ++ } + nsAutoArrayPtr trimBuffer(new AudioDataValue[samples]); + for (int i = 0; i < samples; i++) + trimBuffer[i] = buffer[i]; diff --git a/www-client/seamonkey/seamonkey-2.30-r1.ebuild b/www-client/seamonkey/seamonkey-2.30-r1.ebuild new file mode 100644 index 000000000000..a67a332b8beb --- /dev/null +++ b/www-client/seamonkey/seamonkey-2.30-r1.ebuild @@ -0,0 +1,354 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/www-client/seamonkey/seamonkey-2.30-r1.ebuild,v 1.1 2014/11/05 23:18:24 axs Exp $ + +EAPI=5 +WANT_AUTOCONF="2.1" + +# This list can be updated with scripts/get_langs.sh from the mozilla overlay +MOZ_LANGS=(be ca cs de en en-GB en-US es-AR es-ES fi fr gl hu it ja lt nb-NO nl + pl pt-PT ru sk sv-SE tr uk zh-CN zh-TW) + +MOZ_PV="${PV/_pre*}" +MOZ_PV="${MOZ_PV/_alpha/a}" +MOZ_PV="${MOZ_PV/_beta/b}" +MOZ_PV="${MOZ_PV/_rc/rc}" +MOZ_P="${P}" +MY_MOZ_P="${PN}-${MOZ_PV}" + +if [[ ${PV} == *_pre* ]] ; then + MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/candidates/${MOZ_PV}-candidates/build${PV##*_pre}" + MOZ_LANGPACK_PREFIX="linux-i686/xpi/" + # And the langpack stuff stays at eclass defaults +else + MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/${MOZ_PV}" + MOZ_LANGPACK_PREFIX="langpack/${MY_MOZ_P}." + MOZ_LANGPACK_SUFFIX=".langpack.xpi" +fi + +MOZCONFIG_OPTIONAL_WIFI=1 +MOZCONFIG_OPTIONAL_JIT="enabled" +inherit check-reqs flag-o-matic toolchain-funcs eutils mozconfig-v5.33 multilib pax-utils fdo-mime autotools mozextension nsplugins mozlinguas + +PATCHFF="firefox-31.0-patches-0.2" +PATCH="${PN}-2.30-patches-01" +EMVER="1.7.2" + +DESCRIPTION="Seamonkey Web Browser" +HOMEPAGE="http://www.seamonkey-project.org" + +if [[ ${PV} == *_pre* ]] ; then + # pre-releases. No need for arch teams to change KEYWORDS here. + + KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~x86" +else + # This is where arch teams should change the KEYWORDS. + + KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~x86" +fi + +SLOT="0" +LICENSE="MPL-2.0 GPL-2 LGPL-2.1" +IUSE="+chatzilla +crypt +ipc minimal pulseaudio +roaming test" + +SRC_URI="${SRC_URI} + ${MOZ_FTP_URI}/source/${MY_MOZ_P}.source.tar.bz2 -> ${P}.source.tar.bz2 + http://dev.gentoo.org/~axs/mozilla/patchsets/${PATCHFF}.tar.xz + http://dev.gentoo.org/~polynomial-c/mozilla/patchsets/${PATCH}.tar.xz + crypt? ( http://www.enigmail.net/download/source/enigmail-${EMVER}.tar.gz )" + +ASM_DEPEND=">=dev-lang/yasm-1.1" + +RDEPEND=">=dev-libs/nss-3.17.1 + >=dev-libs/nspr-4.10.6 + crypt? ( || ( + ( >=app-crypt/gnupg-2.0 + || ( + app-crypt/pinentry[gtk] + app-crypt/pinentry[qt4] + ) + ) + =app-crypt/gnupg-1.4* ) ) + system-sqlite? ( >=dev-db/sqlite-3.8.5:3[secure-delete,debug=] )" + +DEPEND="${RDEPEND} + !elibc_glibc? ( !elibc_uclibc? ( dev-libs/libexecinfo ) ) + crypt? ( dev-lang/perl ) + amd64? ( ${ASM_DEPEND} + virtual/opengl ) + x86? ( ${ASM_DEPEND} + virtual/opengl )" + +if [[ ${PV} == *beta* ]] ; then + S="${WORKDIR}/comm-beta" +else + S="${WORKDIR}/comm-release" +fi + +BUILD_OBJ_DIR="${S}/seamonk" + +pkg_setup() { + if [[ ${PV} == *_pre* ]] ; then + ewarn "You're using an unofficial release of ${PN}. Don't file any bug in" + ewarn "Gentoo's Bugtracker against this package in case it breaks for you." + ewarn "Those belong to upstream: https://bugzilla.mozilla.org" + fi + + moz_pkgsetup +} + +pkg_pretend() { + # Ensure we have enough disk space to compile + if use debug || use test ; then + CHECKREQS_DISK_BUILD="8G" + else + CHECKREQS_DISK_BUILD="4G" + fi + check-reqs_pkg_setup +} + +src_unpack() { + unpack ${A} + + # Unpack language packs + mozlinguas_src_unpack +} + +src_prepare() { + # Apply our patches + EPATCH_SUFFIX="patch" \ + EPATCH_FORCE="yes" \ + epatch "${WORKDIR}/seamonkey" + + epatch "${FILESDIR}"/${PN}-2.30-pulseaudio_configure_switch_fix.patch \ + "${FILESDIR}"/${PN}-2.30-jemalloc-configure.patch \ + "${FILESDIR}"/${PN}-2.30-webm-disallow-negative-samples.patch + + # browser patches go here + pushd "${S}"/mozilla &>/dev/null || die + EPATCH_EXCLUDE="2000-firefox_gentoo_install_dirs.patch + 8000_gcc49_mozbug999496_ff31.patch" \ + EPATCH_SUFFIX="patch" \ + EPATCH_FORCE="yes" \ + epatch "${WORKDIR}/firefox" + popd &>/dev/null || die + # drop -Wl,--build-id from LDFLAGS, bug #465466 + + # Shell scripts sometimes contain DOS line endings; bug 391889 + grep -rlZ --include="*.sh" $'\r$' . | + while read -r -d $'\0' file ; do + einfo edos2unix "${file}" + edos2unix "${file}" + done + + # Allow user to apply any additional patches without modifing ebuild + epatch_user + + local ms="${S}/mozilla" + + # Enable gnomebreakpad + if use debug ; then + sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \ + "${ms}"/build/unix/run-mozilla.sh || die "sed failed!" + fi + + # Ensure that are plugins dir is enabled as default + sed -i -e "s:/usr/lib/mozilla/plugins:/usr/lib/nsbrowser/plugins:" \ + "${ms}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 32bit!" + sed -i -e "s:/usr/lib64/mozilla/plugins:/usr/lib64/nsbrowser/plugins:" \ + "${ms}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 64bit!" + + # Don't exit with error when some libs are missing which we have in + # system. + sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \ + -i "${S}"/suite/installer/Makefile.in || die + # Don't error out when there's no files to be removed: + sed 's@\(xargs rm\)$@\1 -f@' \ + -i "${ms}"/toolkit/mozapps/installer/packager.mk || die + + eautoreconf + cd "${S}"/mozilla || die + eautoconf + cd "${S}"/mozilla/js/src || die + eautoconf + cd "${S}"/mozilla/memory/jemalloc/src || die + WANT_AUTOCONF= eautoconf +} + +src_configure() { + MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" + MEXTENSIONS="default" + # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) + # Note: These are for Gentoo Linux use ONLY. For your own distribution, please + # get your own set of keys. + _google_api_key=AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc + + #################################### + # + # mozconfig, CFLAGS and CXXFLAGS setup + # + #################################### + + mozconfig_init + mozconfig_config + + # It doesn't compile on alpha without this LDFLAGS + use alpha && append-ldflags "-Wl,--no-relax" + + if use chatzilla ; then + MEXTENSIONS+=",irc" + else + MEXTENSIONS+=",-irc" + fi + if ! use roaming ; then + MEXTENSIONS+=",-sroaming" + fi + + # Setup api key for location services + echo -n "${_google_api_key}" > "${S}"/google-api-key + mozconfig_annotate '' --with-google-api-keyfile="${S}/google-api-key" + + mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}" + mozconfig_annotate '' --enable-jsd + mozconfig_annotate '' --enable-canvas + + # Other sm-specific settings + mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME} + + mozconfig_annotate '' --enable-safe-browsing + + # Use an objdir to keep things organized. + echo "mk_add_options MOZ_OBJDIR=${BUILD_OBJ_DIR}" \ + >> "${S}"/.mozconfig + + # Finalize and report settings + mozconfig_final + + if use crypt ; then + pushd "${WORKDIR}"/enigmail &>/dev/null || die + econf + popd &>/dev/null || die + fi + + # Work around breakage in makeopts with --no-print-directory + MAKEOPTS="${MAKEOPTS/--no-print-directory/}" + + if [[ $(gcc-major-version) -lt 4 ]] ; then + append-cxxflags -fno-stack-protector + elif [[ $(gcc-major-version) -gt 4 || $(gcc-minor-version) -gt 3 ]] ; then + if use amd64 || use x86 ; then + append-flags -mno-avx + fi + fi +} + +src_compile() { + CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \ + MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL}" \ + emake V=1 -f client.mk + + # Only build enigmail extension if conditions are met. + if use crypt ; then + einfo "Building enigmail" + pushd "${WORKDIR}"/enigmail &>/dev/null || die + emake -j1 + emake xpi + popd &>/dev/null || die + fi +} + +src_install() { + MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" + DICTPATH="\"${EPREFIX}/usr/share/myspell\"" + + local emid + cd "${BUILD_OBJ_DIR}" || die + + # Pax mark xpcshell for hardened support, only used for startupcache creation. + pax-mark m "${BUILD_OBJ_DIR}/mozilla/dist/bin/xpcshell" + + # Copy our preference before omnijar is created. + sed "s|SEAMONKEY_PVR|${PVR}|" "${FILESDIR}"/all-gentoo-1.js > \ + "${BUILD_OBJ_DIR}/mozilla/dist/bin/defaults/pref/all-gentoo.js" \ + || die + + # Set default path to search for dictionaries. + echo "pref(\"spellchecker.dictionary_path\", ${DICTPATH});" \ + >> "${BUILD_OBJ_DIR}/mozilla/dist/bin/defaults/pref/all-gentoo.js" \ + || die + + echo 'pref("extensions.autoDisableScopes", 3);' >> \ + "${BUILD_OBJ_DIR}/mozilla/dist/bin/defaults/pref/all-gentoo.js" \ + || die + + MOZ_MAKE_FLAGS="${MAKEOPTS}" \ + emake DESTDIR="${D}" install + cp "${FILESDIR}"/icon/${PN}.desktop "${T}" || die + + if use crypt ; then + local em_dir="${WORKDIR}/enigmail/build" + pushd "${T}" &>/dev/null || die + unzip "${em_dir}"/enigmail*.xpi install.rdf || die + emid=$(sed -n '//!d; s/.*\({.*}\).*/\1/; p; q' install.rdf) + #' + dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} + cd "${D}"${MOZILLA_FIVE_HOME}/extensions/${emid} || die + unzip "${em_dir}"/enigmail*.xpi || die + + popd &>/dev/null || die + fi + + sed 's|^\(MimeType=.*\)$|\1text/x-vcard;text/directory;application/mbox;message/rfc822;x-scheme-handler/mailto;|' \ + -i "${T}"/${PN}.desktop || die + sed 's|^\(Categories=.*\)$|\1Email;|' -i "${T}"/${PN}.desktop \ + || die + + # Install language packs + mozlinguas_src_install + + # Add StartupNotify=true bug 290401 + if use startup-notification ; then + echo "StartupNotify=true" >> "${T}"/${PN}.desktop || die + fi + + # Install icon and .desktop for menu entry + newicon "${S}"/suite/branding/nightly/content/icon64.png ${PN}.png + domenu "${T}"/${PN}.desktop + + # Required in order to use plugins and even run seamonkey on hardened. + pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/{seamonkey,seamonkey-bin,plugin-container} + + if use minimal ; then + rm -rf "${ED}"/usr/include "${ED}${MOZILLA_FIVE_HOME}"/{idl,include,lib,sdk} + fi + + # Handle plugins dir through nsplugins.eclass + share_plugins_dir + + #doman "${BUILD_OBJ_DIR}/suite/app/${PN}.1" + + # revdep-rebuild entry + insinto /etc/revdep-rebuild + echo "SEARCH_DIRS_MASK=${MOZILLA_FIVE_HOME}*" >> ${T}/11${PN} + doins "${T}"/11${PN} +} + +pkg_preinst() { + MOZILLA_FIVE_HOME="${ROOT}/usr/$(get_libdir)/${PN}" + + if [ -d ${MOZILLA_FIVE_HOME}/plugins ] ; then + rm ${MOZILLA_FIVE_HOME}/plugins -rf + fi +} + +pkg_postinst() { + MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" + + # Update mimedb for the new .desktop file + fdo-mime_desktop_database_update + + if use chatzilla ; then + elog "chatzilla is now an extension which can be en-/disabled and configured via" + elog "the Add-on manager." + fi +} diff --git a/www-client/seamonkey/seamonkey-2.30.ebuild b/www-client/seamonkey/seamonkey-2.30.ebuild deleted file mode 100644 index 17db5e27753c..000000000000 --- a/www-client/seamonkey/seamonkey-2.30.ebuild +++ /dev/null @@ -1,371 +0,0 @@ -# Copyright 1999-2014 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/www-client/seamonkey/seamonkey-2.30.ebuild,v 1.2 2014/11/02 10:28:35 swift Exp $ - -EAPI=5 -WANT_AUTOCONF="2.1" - -# This list can be updated with scripts/get_langs.sh from the mozilla overlay -MOZ_LANGS=(be ca cs de en en-GB en-US es-AR es-ES fi fr gl hu it ja lt nb-NO nl - pl pt-PT ru sk sv-SE tr uk zh-CN zh-TW) - -MOZ_PV="${PV/_pre*}" -MOZ_PV="${MOZ_PV/_alpha/a}" -MOZ_PV="${MOZ_PV/_beta/b}" -MOZ_PV="${MOZ_PV/_rc/rc}" -MOZ_P="${P}" -MY_MOZ_P="${PN}-${MOZ_PV}" - -if [[ ${PV} == *_pre* ]] ; then - MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/candidates/${MOZ_PV}-candidates/build${PV##*_pre}" - MOZ_LANGPACK_PREFIX="linux-i686/xpi/" - # And the langpack stuff stays at eclass defaults -else - MOZ_FTP_URI="ftp://ftp.mozilla.org/pub/${PN}/releases/${MOZ_PV}" - MOZ_LANGPACK_PREFIX="langpack/${MY_MOZ_P}." - MOZ_LANGPACK_SUFFIX=".langpack.xpi" -fi - -MOZCONFIG_OPTIONAL_WIFI=1 -MOZCONFIG_OPTIONAL_JIT="enabled" -inherit check-reqs flag-o-matic toolchain-funcs eutils mozconfig-v5.33 multilib pax-utils fdo-mime autotools mozextension nsplugins mozlinguas - -PATCHFF="firefox-31.0-patches-0.2" -PATCH="${PN}-2.30-patches-01" -EMVER="1.7.2" - -DESCRIPTION="Seamonkey Web Browser" -HOMEPAGE="http://www.seamonkey-project.org" - -if [[ ${PV} == *_pre* ]] ; then - # pre-releases. No need for arch teams to change KEYWORDS here. - - KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~x86" -else - # This is where arch teams should change the KEYWORDS. - - KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~x86" -fi - -SLOT="0" -LICENSE="MPL-2.0 GPL-2 LGPL-2.1" -IUSE="+chatzilla +crypt +ipc minimal pulseaudio +roaming selinux test" - -SRC_URI="${SRC_URI} - ${MOZ_FTP_URI}/source/${MY_MOZ_P}.source.tar.bz2 -> ${P}.source.tar.bz2 - http://dev.gentoo.org/~axs/mozilla/patchsets/${PATCHFF}.tar.xz - http://dev.gentoo.org/~polynomial-c/mozilla/patchsets/${PATCH}.tar.xz - crypt? ( http://www.enigmail.net/download/source/enigmail-${EMVER}.tar.gz )" - -ASM_DEPEND=">=dev-lang/yasm-1.1" - -CDEPEND=">=dev-libs/nss-3.17.1 - >=dev-libs/nspr-4.10.6 - crypt? ( || ( - ( >=app-crypt/gnupg-2.0 - || ( - app-crypt/pinentry[gtk] - app-crypt/pinentry[qt4] - ) - ) - =app-crypt/gnupg-1.4* ) ) - system-sqlite? ( >=dev-db/sqlite-3.8.5:3[secure-delete,debug=] )" - -DEPEND="${CDEPEND} - !elibc_glibc? ( !elibc_uclibc? ( dev-libs/libexecinfo ) ) - crypt? ( dev-lang/perl ) - amd64? ( ${ASM_DEPEND} - virtual/opengl ) - x86? ( ${ASM_DEPEND} - virtual/opengl )" - -RDEPEND="${CDEPEND} - selinux? ( sec-policy/selinux-mozilla ) -" - -if [[ ${PV} == *beta* ]] ; then - S="${WORKDIR}/comm-beta" -else - S="${WORKDIR}/comm-release" -fi - -BUILD_OBJ_DIR="${WORKDIR}/seamonk" - -pkg_setup() { - if [[ ${PV} == *_pre* ]] ; then - ewarn "You're using an unofficial release of ${PN}. Don't file any bug in" - ewarn "Gentoo's Bugtracker against this package in case it breaks for you." - ewarn "Those belong to upstream: https://bugzilla.mozilla.org" - fi - - moz_pkgsetup -} - -pkg_pretend() { - # Ensure we have enough disk space to compile - if use debug || use test ; then - CHECKREQS_DISK_BUILD="8G" - else - CHECKREQS_DISK_BUILD="4G" - fi - check-reqs_pkg_setup -} - -src_unpack() { - unpack ${A} - - # Unpack language packs - mozlinguas_src_unpack -} - -src_prepare() { - # Apply our patches - EPATCH_SUFFIX="patch" \ - EPATCH_FORCE="yes" \ - epatch "${WORKDIR}/seamonkey" - - epatch "${FILESDIR}"/${PN}-2.30-pulseaudio_configure_switch_fix.patch \ - "${FILESDIR}"/${PN}-2.30-jemalloc-configure.patch - - # browser patches go here - pushd "${S}"/mozilla &>/dev/null || die - EPATCH_EXCLUDE="2000-firefox_gentoo_install_dirs.patch - 8000_gcc49_mozbug999496_ff31.patch" \ - EPATCH_SUFFIX="patch" \ - EPATCH_FORCE="yes" \ - epatch "${WORKDIR}/firefox" - popd &>/dev/null || die - # drop -Wl,--build-id from LDFLAGS, bug #465466 - - # Shell scripts sometimes contain DOS line endings; bug 391889 - grep -rlZ --include="*.sh" $'\r$' . | - while read -r -d $'\0' file ; do - einfo edos2unix "${file}" - edos2unix "${file}" - done - - # Allow user to apply any additional patches without modifing ebuild - epatch_user - - local ms="${S}/mozilla" - - # Enable gnomebreakpad - if use debug ; then - sed -i -e "s:GNOME_DISABLE_CRASH_DIALOG=1:GNOME_DISABLE_CRASH_DIALOG=0:g" \ - "${ms}"/build/unix/run-mozilla.sh || die "sed failed!" - fi - - # Ensure that are plugins dir is enabled as default - sed -i -e "s:/usr/lib/mozilla/plugins:/usr/lib/nsbrowser/plugins:" \ - "${ms}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 32bit!" - sed -i -e "s:/usr/lib64/mozilla/plugins:/usr/lib64/nsbrowser/plugins:" \ - "${ms}"/xpcom/io/nsAppFileLocationProvider.cpp || die "sed failed to replace plugin path for 64bit!" - - # Don't exit with error when some libs are missing which we have in - # system. - sed '/^MOZ_PKG_FATAL_WARNINGS/s@= 1@= 0@' \ - -i "${S}"/suite/installer/Makefile.in || die - # Don't error out when there's no files to be removed: - sed 's@\(xargs rm\)$@\1 -f@' \ - -i "${ms}"/toolkit/mozapps/installer/packager.mk || die - - eautoreconf - cd "${S}"/mozilla || die - eautoconf - cd "${S}"/mozilla/js/src || die - eautoconf - cd "${S}"/mozilla/memory/jemalloc/src || die - WANT_AUTOCONF= eautoconf -} - -src_configure() { - MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - MEXTENSIONS="default" - # Google API keys (see http://www.chromium.org/developers/how-tos/api-keys) - # Note: These are for Gentoo Linux use ONLY. For your own distribution, please - # get your own set of keys. - _google_api_key=AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc - - #################################### - # - # mozconfig, CFLAGS and CXXFLAGS setup - # - #################################### - - mozconfig_init - mozconfig_config - - # It doesn't compile on alpha without this LDFLAGS - use alpha && append-ldflags "-Wl,--no-relax" - - if use chatzilla ; then - MEXTENSIONS+=",irc" - else - MEXTENSIONS+=",-irc" - fi - if ! use roaming ; then - MEXTENSIONS+=",-sroaming" - fi - - # Setup api key for location services - echo -n "${_google_api_key}" > "${S}"/google-api-key - mozconfig_annotate '' --with-google-api-keyfile="${S}/google-api-key" - - mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}" - mozconfig_annotate '' --enable-jsd - mozconfig_annotate '' --enable-canvas - - # Other sm-specific settings - mozconfig_annotate '' --with-default-mozilla-five-home=${MOZILLA_FIVE_HOME} - - mozconfig_annotate '' --enable-safe-browsing - - # Use an objdir to keep things organized. - echo "mk_add_options MOZ_OBJDIR=${BUILD_OBJ_DIR}" \ - >> "${S}"/.mozconfig - # Add a TOPSRCDIR too just in case - echo "mk_add_options TOPSRCDIR=${S}" \ - >> "${S}"/.mozconfig - - # Finalize and report settings - mozconfig_final - - if use crypt ; then - pushd "${WORKDIR}"/enigmail &>/dev/null || die - econf - popd &>/dev/null || die - fi - - # Work around breakage in makeopts with --no-print-directory - MAKEOPTS="${MAKEOPTS/--no-print-directory/}" - - if [[ $(gcc-major-version) -lt 4 ]] ; then - append-cxxflags -fno-stack-protector - elif [[ $(gcc-major-version) -gt 4 || $(gcc-minor-version) -gt 3 ]] ; then - if use amd64 || use x86 ; then - append-flags -mno-avx - fi - fi - - mkdir -p "${BUILD_OBJ_DIR}" && cd "${BUILD_OBJ_DIR}" || die - # run configure twice to get it to prepare the objdir and then actually set up properly - # apparently necessary due to build system b0rkage on mozilla-33 - _moz_src_configure() { - CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \ - MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL}" \ - emake V=1 -f "${S}"/client.mk configure - } - _moz_src_configure - _moz_src_configure -} - -src_compile() { - CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" \ - MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL}" \ - emake V=1 -f "${S}"/client.mk - - # Only build enigmail extension if conditions are met. - if use crypt ; then - einfo "Building enigmail" - pushd "${WORKDIR}"/enigmail &>/dev/null || die - emake -j1 - emake xpi - popd &>/dev/null || die - fi -} - -src_install() { - MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - DICTPATH="\"${EPREFIX}/usr/share/myspell\"" - - local emid - cd "${BUILD_OBJ_DIR}" || die - - # Pax mark xpcshell for hardened support, only used for startupcache creation. - pax-mark m "${BUILD_OBJ_DIR}/mozilla/dist/bin/xpcshell" - - # Copy our preference before omnijar is created. - sed "s|SEAMONKEY_PVR|${PVR}|" "${FILESDIR}"/all-gentoo-1.js > \ - "${BUILD_OBJ_DIR}/mozilla/dist/bin/defaults/pref/all-gentoo.js" \ - || die - - # Set default path to search for dictionaries. - echo "pref(\"spellchecker.dictionary_path\", ${DICTPATH});" \ - >> "${BUILD_OBJ_DIR}/mozilla/dist/bin/defaults/pref/all-gentoo.js" \ - || die - - echo 'pref("extensions.autoDisableScopes", 3);' >> \ - "${BUILD_OBJ_DIR}/mozilla/dist/bin/defaults/pref/all-gentoo.js" \ - || die - - MOZ_MAKE_FLAGS="${MAKEOPTS}" \ - emake DESTDIR="${D}" install - cp "${FILESDIR}"/icon/${PN}.desktop "${T}" || die - - if use crypt ; then - local em_dir="${WORKDIR}/enigmail/build" - pushd "${T}" &>/dev/null || die - unzip "${em_dir}"/enigmail*.xpi install.rdf || die - emid=$(sed -n '//!d; s/.*\({.*}\).*/\1/; p; q' install.rdf) - #' - dodir ${MOZILLA_FIVE_HOME}/extensions/${emid} - cd "${D}"${MOZILLA_FIVE_HOME}/extensions/${emid} || die - unzip "${em_dir}"/enigmail*.xpi || die - - popd &>/dev/null || die - fi - - sed 's|^\(MimeType=.*\)$|\1text/x-vcard;text/directory;application/mbox;message/rfc822;x-scheme-handler/mailto;|' \ - -i "${T}"/${PN}.desktop || die - sed 's|^\(Categories=.*\)$|\1Email;|' -i "${T}"/${PN}.desktop \ - || die - - # Install language packs - mozlinguas_src_install - - # Add StartupNotify=true bug 290401 - if use startup-notification ; then - echo "StartupNotify=true" >> "${T}"/${PN}.desktop || die - fi - - # Install icon and .desktop for menu entry - newicon "${S}"/suite/branding/nightly/content/icon64.png ${PN}.png - domenu "${T}"/${PN}.desktop - - # Required in order to use plugins and even run seamonkey on hardened. - pax-mark m "${ED}"${MOZILLA_FIVE_HOME}/{seamonkey,seamonkey-bin,plugin-container} - - if use minimal ; then - rm -rf "${ED}"/usr/include "${ED}${MOZILLA_FIVE_HOME}"/{idl,include,lib,sdk} - fi - - # Handle plugins dir through nsplugins.eclass - share_plugins_dir - - #doman "${BUILD_OBJ_DIR}/suite/app/${PN}.1" - - # revdep-rebuild entry - insinto /etc/revdep-rebuild - echo "SEARCH_DIRS_MASK=${MOZILLA_FIVE_HOME}*" >> ${T}/11${PN} - doins "${T}"/11${PN} -} - -pkg_preinst() { - MOZILLA_FIVE_HOME="${ROOT}/usr/$(get_libdir)/${PN}" - - if [ -d ${MOZILLA_FIVE_HOME}/plugins ] ; then - rm ${MOZILLA_FIVE_HOME}/plugins -rf - fi -} - -pkg_postinst() { - MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}" - - # Update mimedb for the new .desktop file - fdo-mime_desktop_database_update - - if use chatzilla ; then - elog "chatzilla is now an extension which can be en-/disabled and configured via" - elog "the Add-on manager." - fi -} -- cgit v1.2.3-65-gdbad