Compare commits
10 Commits
28506867bc
...
bcebbf995e
| Author | SHA1 | Date | |
|---|---|---|---|
| bcebbf995e | |||
| 6d3ca93d17 | |||
| 549d5d2701 | |||
| 384c36ceef | |||
| 02c8b48ab5 | |||
| 78dcf69caf | |||
| 91e7d4d978 | |||
| 17b24b59e7 | |||
| d278ffef5a | |||
| 459c7fceb2 |
@ -1,3 +1,5 @@
|
|||||||
DIST pgbackrest-2.39.tar.gz 5771539 SHA256 d1c641271bbbebb7adae72be24716bf0295f746d1a00c5f0a632ead7669b1a8d SHA512 1f2d26a33a6df9652fa97a02af55b399ede26b7ab1f243b0c74b8bf13835c8eb43daed8df556f72651974eab1c549e04cdc6e5893fbedd40a52afee92bf8d069 WHIRLPOOL c1c4637d2d9c32026107a7d3b3a123d34153f9e004f6e3e9bc029752d93d8fc4fe106bdfb2cb1167ffe4ecc1844b110d22683de4f190e061acdbdc2a974f3926
|
DIST pgbackrest-2.39.tar.gz 5771539 SHA256 d1c641271bbbebb7adae72be24716bf0295f746d1a00c5f0a632ead7669b1a8d SHA512 1f2d26a33a6df9652fa97a02af55b399ede26b7ab1f243b0c74b8bf13835c8eb43daed8df556f72651974eab1c549e04cdc6e5893fbedd40a52afee92bf8d069 WHIRLPOOL c1c4637d2d9c32026107a7d3b3a123d34153f9e004f6e3e9bc029752d93d8fc4fe106bdfb2cb1167ffe4ecc1844b110d22683de4f190e061acdbdc2a974f3926
|
||||||
|
DIST pgbackrest-2.47.tar.gz 6093123 SHA256 7712c26b41a969cf487abb4a8075f77943fe6d30aba49ab8edb1ac596cd1ee0e SHA512 9d7909d3431135ec3e57947a79b7a62648f27822f1ce56d2c091be3ba6d7c4168593a05a866bd724cc42707c09be69074b64d750004b5c55f29790a005e2e683 WHIRLPOOL cfef3d3fdc37e10ef721d062da98409df80357b378638e10d94765c359f20b8ee76aaf9dcf43ad1108c4d01ded0f03b0759e1a278149a4c02177c2adec9ae377
|
||||||
EBUILD pgbackrest-2.39.ebuild 653 SHA256 bb651d6dfafad3239d3a23337ef9b16c19734fdc78fd886f09046511ff2435e3 SHA512 f3acf9885f675b01b66d68dd432ace812bd7a8ec7c035bdc2980ff05597d7ca4b0323119e8b44c99794b494abe04ee14687ccbd088d6217c5f41d3151f6b7267 WHIRLPOOL ee97eb31808f0674c588db84e27d8ac199d6af696997afd575d83e226c88f1a834a45887c0153826985c07cb5dafa7fd0e46ad2be901aeadc50501320d570d8c
|
EBUILD pgbackrest-2.39.ebuild 653 SHA256 bb651d6dfafad3239d3a23337ef9b16c19734fdc78fd886f09046511ff2435e3 SHA512 f3acf9885f675b01b66d68dd432ace812bd7a8ec7c035bdc2980ff05597d7ca4b0323119e8b44c99794b494abe04ee14687ccbd088d6217c5f41d3151f6b7267 WHIRLPOOL ee97eb31808f0674c588db84e27d8ac199d6af696997afd575d83e226c88f1a834a45887c0153826985c07cb5dafa7fd0e46ad2be901aeadc50501320d570d8c
|
||||||
|
EBUILD pgbackrest-2.47.ebuild 653 SHA256 bb651d6dfafad3239d3a23337ef9b16c19734fdc78fd886f09046511ff2435e3 SHA512 f3acf9885f675b01b66d68dd432ace812bd7a8ec7c035bdc2980ff05597d7ca4b0323119e8b44c99794b494abe04ee14687ccbd088d6217c5f41d3151f6b7267 WHIRLPOOL ee97eb31808f0674c588db84e27d8ac199d6af696997afd575d83e226c88f1a834a45887c0153826985c07cb5dafa7fd0e46ad2be901aeadc50501320d570d8c
|
||||||
MISC README 85 SHA256 075cd37b3073d726f389730e409ed659b7baf589a95e3549da2fab895c66fba7 SHA512 2ff99d7c9a001b49f2b0f02ba5190d6d70ffed72757238188e784ae123415b6a05929f1c6aa9f7e2ad145cd26aead799ce2644eadf9c5f389e9fa7b64ee0ba42 WHIRLPOOL 8896cc47aff58a50a495219733e78e85c7a9e5fee522206bf0400564364fbce549f71ad17de6e4c302e64871a01372bad380e5e6586f149fc1f50f6eea04cfdd
|
MISC README 85 SHA256 075cd37b3073d726f389730e409ed659b7baf589a95e3549da2fab895c66fba7 SHA512 2ff99d7c9a001b49f2b0f02ba5190d6d70ffed72757238188e784ae123415b6a05929f1c6aa9f7e2ad145cd26aead799ce2644eadf9c5f389e9fa7b64ee0ba42 WHIRLPOOL 8896cc47aff58a50a495219733e78e85c7a9e5fee522206bf0400564364fbce549f71ad17de6e4c302e64871a01372bad380e5e6586f149fc1f50f6eea04cfdd
|
||||||
|
|||||||
28
app-backup/pgbackrest/pgbackrest-2.47.ebuild
Normal file
28
app-backup/pgbackrest/pgbackrest-2.47.ebuild
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
# Copyright 1999-2022 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
DESCRIPTION="Reliable PostgreSQL Backup & Restore"
|
||||||
|
HOMEPAGE="https://pgbackrest.org https://github.com/pgbackrest/pgbackrest"
|
||||||
|
SRC_URI="https://github.com/${PN}/${PN}/archive/release/${PV}.tar.gz -> ${P}.tar.gz"
|
||||||
|
|
||||||
|
LICENSE="MIT"
|
||||||
|
KEYWORDS="~amd64 ~x86"
|
||||||
|
SLOT="0"
|
||||||
|
|
||||||
|
DEPEND="app-arch/lz4:=
|
||||||
|
>=dev-db/postgresql-10:=[icu,ssl]
|
||||||
|
dev-lang/perl:0=
|
||||||
|
dev-libs/libxml2:2
|
||||||
|
dev-libs/openssl:0=
|
||||||
|
sys-libs/zlib:="
|
||||||
|
RDEPEND="${DEPEND}"
|
||||||
|
BDEPEND="virtual/pkgconfig"
|
||||||
|
|
||||||
|
S="${WORKDIR}/${PN}-release-${PV}/src"
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
default
|
||||||
|
keepdir /var/log/pgbackrest/
|
||||||
|
}
|
||||||
@ -1,2 +0,0 @@
|
|||||||
DIST Impressive-0.13.0-beta1a.tar.gz 213098 SHA256 a7f01d7d65b8ad595d8241216e95193c3584af897561c95990116060bd5bbc86 SHA512 5484f9764848129150d03233a9b270d2c31ec5f5083100662dd3cca85d3c7ead0000bd23b7d531ad45667410e1a1ea5d97ca1a2f4e8a2449dc730273144e56e8 WHIRLPOOL f9a5e4179e948163d897b0818c3bc4eed3acb654657068228fc560bb02cc306c3eee60f21b0ef4b512b84762adad22b7f2133ecac6f8af25ca23a8552d4e2f40
|
|
||||||
EBUILD impressive-0.13.0_beta1-r1.ebuild 1293 SHA256 294827a705aca799cb03f84ad52c27f584f8ff64d835b085a1229814a9046565 SHA512 fb8ebe80716efd24280e9f79fe6067f1370ea1d883c5e8d6fdd9974e3eef82cc1bcbf352f33f95ebcee9fa5513e9cc20b3944d0783102e13c7bf8b5e09a97483 WHIRLPOOL 9632e74c5cc56974702561afedb2262b3e263435cfe7e76016f37ed644bb7ca3c1f7f577736f7e100940d91b08c38905b3349960610e9425b66576018b2296aa
|
|
||||||
@ -1,55 +0,0 @@
|
|||||||
# Copyright 1999-2019 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=6
|
|
||||||
|
|
||||||
PYTHON_COMPAT=( python2_7 python3_{6,7,8} )
|
|
||||||
|
|
||||||
inherit eutils python-r1
|
|
||||||
|
|
||||||
MY_PN="Impressive"
|
|
||||||
|
|
||||||
DESCRIPTION="Stylish way of giving presentations with Python"
|
|
||||||
HOMEPAGE="http://impressive.sourceforge.net/"
|
|
||||||
SRC_URI="mirror://sourceforge/${PN}/${MY_PN}/${PV/_/-}/${MY_PN}-${PV/_/-}a.tar.gz"
|
|
||||||
|
|
||||||
LICENSE="GPL-2"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="amd64 ~x86"
|
|
||||||
|
|
||||||
IUSE=""
|
|
||||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
|
||||||
|
|
||||||
DEPEND=""
|
|
||||||
RDEPEND="${PYTHON_DEPS}
|
|
||||||
dev-python/pygame[${PYTHON_USEDEP}]
|
|
||||||
dev-python/pillow[${PYTHON_USEDEP}]
|
|
||||||
x11-apps/xrandr
|
|
||||||
app-text/mupdf
|
|
||||||
|| ( media-fonts/dejavu media-fonts/corefonts )
|
|
||||||
"
|
|
||||||
|
|
||||||
DOCS=(
|
|
||||||
changelog.txt
|
|
||||||
demo.pdf
|
|
||||||
)
|
|
||||||
HTML_DOCS=(
|
|
||||||
impressive.html
|
|
||||||
)
|
|
||||||
|
|
||||||
S="${WORKDIR}/${MY_PN}-${PV/_/-}a"
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
default
|
|
||||||
python_foreach_impl python_doscript ${PN}.py
|
|
||||||
doman impressive.1
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
elog "The experience with ${PN} can be enhanced by folowing packages:"
|
|
||||||
optfeature "starting web or e-mail hyperlinks from PDF documents" x11-misc/xdg-utils
|
|
||||||
optfeature "sound and video playback" media-video/ffmpeg
|
|
||||||
optfeature "sound and video playback" media-video/mplayer
|
|
||||||
optfeature "sound and video playback" media-video/mplayer2
|
|
||||||
optfeature "extraction of PDF page titles" app-text/pdftk
|
|
||||||
}
|
|
||||||
@ -1,6 +0,0 @@
|
|||||||
DIST rednotebook-2.15.tar.gz 618012 SHA256 6f6979ee1d026396883bfff6c611809a79359e9d6cc3788f3b0ff6cb9981e2e7 SHA512 5167fa9107614a7bf1557d89f0ec144d30c04236999f55e1d89953bf9b5487894fb0fb1e693101fc54af1d24d1c72054ef66bb4266c75d6adac5cb963ac665f0 WHIRLPOOL d7d3d09ba6205ae0146adc3b2c981f8ceb9b6679d41d49ed43cd569ccc81b83436cbb6c4f4f0b19c0aae0cfd927d0c31cc9531adb0993af6f9e18917bb85226f
|
|
||||||
DIST rednotebook-2.16.tar.gz 618240 SHA256 81e9ad73aadc91e5d0c268f6f5cc818e340c073ae6c4d88a452157f465402f0d SHA512 97c54934c730e6177ed06d5665f511c8c7773b63d407e9fcf0fd118d203c32d2eccabfd784939f9ca9d1bae9d56d9673da32873427e4b5bf092b2e8f3caa230f WHIRLPOOL d4d4c35f5e9476aec19c23592c7ae90b711444b20c8cad80255a763fc754a1dd84d59f33b359dfb9843b7562dce73c20b272a369f9a38e266d93158908451628
|
|
||||||
DIST rednotebook-2.21.tar.gz 622461 SHA256 6c4310b95f111ab6879e5e546bdddcd66fef572a3cfc52cecbf581a54adc85c3 SHA512 44d42aca168cb643b34270aa3965501bbb0afe877a781d8e5351603a8751e7dba6e7e03667234af8e0c49488ade616fabe19dedc4c77cd882da042f2195557a2 WHIRLPOOL 04b675372371c3ad9cf98242a550b89f494d0279469699a841e1c047a2288277dac09329eed64cda759c83208566529e4416e22609fb0b3be0a242109968f1ef
|
|
||||||
EBUILD rednotebook-2.15.ebuild 766 SHA256 92069e3192820d22573fa5b54c4cd946a23ed12a8af1cc4a0857f1ac890e0b87 SHA512 6571250468242eb3bfc1519f685936ccbf45a7b66e283606d6d5e24d6f5820366820f71eee0cd33dc42e60da571eebe63f26fb04fb65fafcb0e1241ac88001e5 WHIRLPOOL 9828a8590222efee61116a814113e98b182fa8173cdead71c43badef03df2f6b7ea15ef936a0531ec49326155f5d903aa466871b04cd3524f3285002cf6d9cd8
|
|
||||||
EBUILD rednotebook-2.16.ebuild 766 SHA256 92069e3192820d22573fa5b54c4cd946a23ed12a8af1cc4a0857f1ac890e0b87 SHA512 6571250468242eb3bfc1519f685936ccbf45a7b66e283606d6d5e24d6f5820366820f71eee0cd33dc42e60da571eebe63f26fb04fb65fafcb0e1241ac88001e5 WHIRLPOOL 9828a8590222efee61116a814113e98b182fa8173cdead71c43badef03df2f6b7ea15ef936a0531ec49326155f5d903aa466871b04cd3524f3285002cf6d9cd8
|
|
||||||
EBUILD rednotebook-2.21.ebuild 779 SHA256 bbd9c5677e8a25e35e299272fa30dbc748100a1fb964800fe340f067cb29c017 SHA512 e7849215e6abf16736d728346dd2f3c6f09540cd2dc2a1de54e5c720f9d1d425fcdf21c088d799c3e764a56279d2449f3177bc3463561b7693ed5584e2b40782 WHIRLPOOL 22c939d0280aae392ee8b46f54efdbf1ea9c700b4aab27384d7338bec2ece904f542759f54b43fffa42a169cea1a97fec0092e71b1176afdd39c972fc61d9357
|
|
||||||
@ -1,34 +0,0 @@
|
|||||||
# Copyright 1999-2017 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=6
|
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_{5,6,7,8} )
|
|
||||||
|
|
||||||
inherit python-r1
|
|
||||||
|
|
||||||
DESCRIPTION="A python based journal"
|
|
||||||
HOMEPAGE="https://rednotebook.sourceforge.io/"
|
|
||||||
SRC_URI="https://github.com/jendrikseipp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
|
||||||
|
|
||||||
LICENSE="GPL-2+"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="amd64 x86"
|
|
||||||
IUSE="spell"
|
|
||||||
|
|
||||||
RDEPEND="${PYTHON_DEPS}
|
|
||||||
>=x11-libs/gtk+-3.18
|
|
||||||
>=net-libs/webkit-gtk-2.16
|
|
||||||
>=x11-libs/gtksourceview-3.18:3.0
|
|
||||||
>=dev-python/pyyaml-3.10
|
|
||||||
spell? ( >=dev-python/pyenchant-1.6 )"
|
|
||||||
DEPEND="${RDEPEND}"
|
|
||||||
|
|
||||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
python3 setup.py install --root="${D}"
|
|
||||||
# python_replicate_script "${D%/}"/usr/bin/rednotebook
|
|
||||||
einstalldocs
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,34 +0,0 @@
|
|||||||
# Copyright 1999-2017 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=6
|
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_{5,6,7,8} )
|
|
||||||
|
|
||||||
inherit python-r1
|
|
||||||
|
|
||||||
DESCRIPTION="A python based journal"
|
|
||||||
HOMEPAGE="https://rednotebook.sourceforge.io/"
|
|
||||||
SRC_URI="https://github.com/jendrikseipp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
|
||||||
|
|
||||||
LICENSE="GPL-2+"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="amd64 x86"
|
|
||||||
IUSE="spell"
|
|
||||||
|
|
||||||
RDEPEND="${PYTHON_DEPS}
|
|
||||||
>=x11-libs/gtk+-3.18
|
|
||||||
>=net-libs/webkit-gtk-2.16
|
|
||||||
>=x11-libs/gtksourceview-3.18:3.0
|
|
||||||
>=dev-python/pyyaml-3.10
|
|
||||||
spell? ( >=dev-python/pyenchant-1.6 )"
|
|
||||||
DEPEND="${RDEPEND}"
|
|
||||||
|
|
||||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
python3 setup.py install --root="${D}"
|
|
||||||
# python_replicate_script "${D%/}"/usr/bin/rednotebook
|
|
||||||
einstalldocs
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,36 +0,0 @@
|
|||||||
# Copyright 1999-2017 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=7
|
|
||||||
PYTHON_COMPAT=( python3_{7,8,9} )
|
|
||||||
|
|
||||||
#DISTUTILS_USE_SETUPTOOLS=rdepend
|
|
||||||
DISTUTILS_USE_SETUPTOOLS=no
|
|
||||||
|
|
||||||
inherit distutils-r1
|
|
||||||
|
|
||||||
DESCRIPTION="A python based journal"
|
|
||||||
HOMEPAGE="https://rednotebook.sourceforge.io/"
|
|
||||||
SRC_URI="https://github.com/jendrikseipp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
|
||||||
|
|
||||||
LICENSE="GPL-2+"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="amd64 x86"
|
|
||||||
IUSE="spell"
|
|
||||||
|
|
||||||
RDEPEND="
|
|
||||||
>=dev-python/pyyaml-3.10[${PYTHON_USEDEP}]
|
|
||||||
spell? ( >=dev-python/pyenchant-1.6[${PYTHON_USEDEP}] )
|
|
||||||
"
|
|
||||||
DEPEND="
|
|
||||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
|
||||||
>=x11-libs/gtk+-3.18
|
|
||||||
>=net-libs/webkit-gtk-2.16
|
|
||||||
>=x11-libs/gtksourceview-3.18:3.0
|
|
||||||
"
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
distutils-r1_src_install
|
|
||||||
# einstalldocs
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,2 +0,0 @@
|
|||||||
DIST godot-2.1.4.tar.gz 14811915 SHA256 07cf3b01367d5ea53805f144bc60711bd79efb53f1f88d57d6a706e6944de8d7 SHA512 6557197b3aabc2dab5d583cab7a76fd5591c0a89347a10ec1cf370230e57fdbca792f99d69456a3d03ba6f22865464771e81505cb39c2b4e9f3c0b82ea9d2e5b WHIRLPOOL 84435db4a9ca758623bb9fbb7c43ba432f2c17e43ffdc49df5f72c77acc47bbf47ee0dec8872a4ecd86d75158fdd632d1bca1672e41a14616fab4f9ec3fcdc87
|
|
||||||
EBUILD godot-2.1.4.ebuild 2713 SHA256 a9db6d0146fdf4d2bcd8daf1b9eeaf48d7eeeae907dca3bef1ca5656b7edb515 SHA512 8adc87f6c93951222cb82ec2457d11675533a148a545496dce1d2a5d90d201e373c796e1b51d8794afb1bb5ec61613c484a1d862c893b1dd40c5cc5fe976ebe2 WHIRLPOOL 0df0de90d0a7c117f7ae0a916314588c2a3f7b57ea88b73a27bc631f0820c95f6065c2614fe5b0e90b1314d0ae7f0b86578415d5a1c865cd16319879fd65e8b7
|
|
||||||
@ -1,112 +0,0 @@
|
|||||||
# Copyright 1999-2017 Gentoo Foundation
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=6
|
|
||||||
|
|
||||||
inherit eutils scons-utils
|
|
||||||
|
|
||||||
DESCRIPTION="A advanced, feature packed, multi-platform 2D and 3D game engine."
|
|
||||||
HOMEPAGE="http://www.godotengine.org"
|
|
||||||
|
|
||||||
if [[ ${PV} == 9999 ]]; then
|
|
||||||
inherit git-r3
|
|
||||||
|
|
||||||
EGIT_REPO_URI="https://github.com/godotengine/godot.git"
|
|
||||||
SRC_URI=""
|
|
||||||
KEYWORDS=""
|
|
||||||
else
|
|
||||||
SRC_URI="https://github.com/godotengine/godot/archive/${PV}-stable.tar.gz -> ${P}.tar.gz"
|
|
||||||
RESTRICT="primaryuri"
|
|
||||||
KEYWORDS="amd64 x86"
|
|
||||||
S="${WORKDIR}/${PN}-${PV}-stable"
|
|
||||||
fi
|
|
||||||
|
|
||||||
LICENSE="MIT"
|
|
||||||
SLOT="0"
|
|
||||||
IUSE="+freetype llvm +openssl +png pulseaudio theora udev +vorbis +xml"
|
|
||||||
|
|
||||||
DEPEND="
|
|
||||||
>=app-arch/bzip2-1.0.6-r6
|
|
||||||
>=app-arch/lz4-0_p120
|
|
||||||
>=app-arch/xz-utils-5.0.8
|
|
||||||
>=dev-libs/json-c-0.11-r1
|
|
||||||
>=media-libs/alsa-lib-1.0.28
|
|
||||||
>=media-libs/flac-1.3.1-r1
|
|
||||||
>=media-libs/libogg-1.3.1
|
|
||||||
>=media-libs/libsndfile-1.0.25-r1
|
|
||||||
>=media-libs/mesa-10.2.8[gles2]
|
|
||||||
>=net-libs/libasyncns-0.8-r3
|
|
||||||
>=sys-apps/attr-2.4.47-r1
|
|
||||||
>=sys-apps/tcp-wrappers-7.6.22-r1
|
|
||||||
>=sys-apps/util-linux-2.25.2-r2
|
|
||||||
>=sys-devel/gcc-4.6.4:*[cxx]
|
|
||||||
>=sys-libs/gdbm-1.11
|
|
||||||
>=sys-libs/glibc-2.20-r2
|
|
||||||
>=sys-libs/glibc-2.20-r2
|
|
||||||
>=sys-libs/libcap-2.22-r2
|
|
||||||
>=sys-libs/zlib-1.2.8-r1
|
|
||||||
>=x11-libs/libX11-1.6.2
|
|
||||||
>=x11-libs/libXcursor-1.1.14
|
|
||||||
>=x11-libs/libXinerama-1.1.3
|
|
||||||
freetype? ( >=media-libs/freetype-2.5.3-r1:2 )
|
|
||||||
llvm? ( >=sys-devel/llvm-3.6.0[clang] )
|
|
||||||
openssl? ( >=dev-libs/openssl-1.0.1j:0 )
|
|
||||||
png? ( >=media-libs/libpng-1.6.16:0= )
|
|
||||||
pulseaudio? ( >=media-sound/pulseaudio-5.0-r7 )
|
|
||||||
theora? ( media-libs/libtheora )
|
|
||||||
udev? ( virtual/udev )
|
|
||||||
virtual/glu
|
|
||||||
vorbis? ( >=media-libs/libvorbis-1.3.4 )
|
|
||||||
xml? ( >=dev-libs/expat-2.1.0-r3 )"
|
|
||||||
|
|
||||||
RDEPEND="${DEPEND}"
|
|
||||||
|
|
||||||
src_configure() {
|
|
||||||
MYSCONS=(
|
|
||||||
CC="$(tc-getCC)"
|
|
||||||
builtin_zlib=no
|
|
||||||
colored=yes
|
|
||||||
platform=x11
|
|
||||||
freetype=$(usex freetype)
|
|
||||||
openssl=$(usex openssl)
|
|
||||||
png=$(usex png)
|
|
||||||
pulseaudio=$(usex pulseaudio)
|
|
||||||
theora=$(usex theora)
|
|
||||||
udev=$(usex udev)
|
|
||||||
use_llvm=$(usex llvm)
|
|
||||||
vorbis=$(usex vorbis)
|
|
||||||
xml=$(usex xml)
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
escons "${MYSCONS[@]}"
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
newicon icon.svg ${PN}.svg
|
|
||||||
dobin bin/godot.*
|
|
||||||
if [[ "${ARCH}" == "amd64" ]]; then
|
|
||||||
if use llvm; then
|
|
||||||
make_desktop_entry godot.x11.tools.64.llvm Godot
|
|
||||||
with_desktop_entry=1
|
|
||||||
else
|
|
||||||
make_desktop_entry godot.x11.tools.64 Godot
|
|
||||||
with_desktop_entry=1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ "${ARCH}" == "x86" ]]; then
|
|
||||||
if use llvm; then
|
|
||||||
make_desktop_entry godot.x11.tools.32.llvm Godot
|
|
||||||
with_desktop_entry=1
|
|
||||||
else
|
|
||||||
make_desktop_entry godot.x11.tools.32 Godot
|
|
||||||
with_desktop_entry=1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ! [[ "${with_desktop_entry}" == "1" ]]; then
|
|
||||||
elog "Couldn't detect running architecture to create a desktop file."
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
@ -1,2 +0,0 @@
|
|||||||
DIST tasklib-1.3.0.tar.gz 32757 SHA256 ac5137466f0a3e2940a1c973f9765afec4ec02cd1d42ac81e226dca95de35670 SHA512 bb3660b54c56572d9e9746be795d2b80cb414af0f1b9a430c4f9b15ce8c69322eb66cee1a6d035ec70a67e5974fbbe2fafbdd68a4a91cc78fcf3a6ad1c22e098 WHIRLPOOL 853d4bde5c60de840f37078ff7e0edffe148a621fb304081eb4d9bffdc1fa288f815e84d17662242903772bf15a7a88c6b6a6c9cd41a12eb55c9bf8f75b734db
|
|
||||||
EBUILD tasklib-1.3.0.ebuild 489 SHA256 7a5a4a59b0403906bcb88bff2b810191826c66d9bb6bae59c47696fd0d2c61c7 SHA512 915a9d613ef4770718a14637708fc2211fc90100a690260096f79d5511580ddea1a1adb26b36501a23afcb1cf5e36ad1164f7d3448c2d726586436acee46dbc4 WHIRLPOOL deca542e80181b63a43d3c5ec7991c4bfea7ba6cf49a7d0ee73d5d35e9bcf40d90f8410d44de7b0facd966c92d64e061de38eee6eda739e483d06bc5e11c5777
|
|
||||||
@ -1,20 +0,0 @@
|
|||||||
# Copyright 2020 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=7
|
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_{5,6,7,8} )
|
|
||||||
inherit distutils-r1
|
|
||||||
|
|
||||||
DESCRIPTION="A python library for interacting with taskwarrior databases"
|
|
||||||
HOMEPAGE="https://github.com/robgolding/tasklib"
|
|
||||||
SRC_URI="https://github.com/robgolding/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
|
||||||
|
|
||||||
LICENSE="BSD-3"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="amd64 ~x86"
|
|
||||||
IUSE=""
|
|
||||||
|
|
||||||
DEPEND=">app-misc/task-2.1.0"
|
|
||||||
RDEPEND="${DEPEND}"
|
|
||||||
BDEPEND=""
|
|
||||||
@ -1,2 +0,0 @@
|
|||||||
DIST urwid-2.1.0.tar.gz 630226 SHA256 0896f36060beb6bf3801cb554303fef336a79661401797551ba106d23ab4cd86 SHA512 c121c0e49ab9531f67bff8740d29fc716fb8c9203e1b2ddb7257f01095e0bf976f3f2131a3b1f95a3b5368ddeea6a09b9c867ab459b91e3e9be6cba4f18ec654 WHIRLPOOL 168319d548b033b20183f44726b6afc7e1d46d8a0782f5c24d26d9cbad0c994c651e1943c3f29f640234239874458b7152238ab847f0ffcf8b259a30b6504cdd
|
|
||||||
EBUILD urwid-2.1.0.ebuild 1034 SHA256 c2d1af4a3a78dab0655d9e9409f167ef4619e7eb424274a3d7c8dfa226053288 SHA512 bd83356d92ecd7db9f7ec2ead643b1cff81d2c2c1e87c09de3b8133922ff8cd48ad88d7ca28d29241f2fdc730958641099bbf0b49a1d984c588d166bd2d131e1 WHIRLPOOL bb9e717c3d6c179486afdb824bd83cd4a50f0f763abe618d838ec360d33acfe5878ebdf7190fdbb36f8ef06e039b1e79d3b97a690c0e985e7c9f359e3171447b
|
|
||||||
@ -1,49 +0,0 @@
|
|||||||
# Copyright 1999-2019 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=6
|
|
||||||
|
|
||||||
PYTHON_COMPAT=( python2_7 python3_{4,5,6,7,8} )
|
|
||||||
PYTHON_REQ_USE="ncurses"
|
|
||||||
|
|
||||||
inherit distutils-r1
|
|
||||||
|
|
||||||
DESCRIPTION="Curses-based user interface library for Python"
|
|
||||||
HOMEPAGE="http://urwid.org/ https://pypi.org/project/urwid/"
|
|
||||||
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
|
|
||||||
|
|
||||||
LICENSE="LGPL-2.1"
|
|
||||||
SLOT="0"
|
|
||||||
KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
|
|
||||||
IUSE="doc examples"
|
|
||||||
|
|
||||||
DEPEND="
|
|
||||||
dev-python/setuptools[${PYTHON_USEDEP}]
|
|
||||||
doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
|
|
||||||
"
|
|
||||||
|
|
||||||
python_compile_all() {
|
|
||||||
if use doc; then
|
|
||||||
sphinx-build docs _build/html || die
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
python_compile() {
|
|
||||||
if ! python_is_python3; then
|
|
||||||
local CFLAGS="${CFLAGS} -fno-strict-aliasing"
|
|
||||||
export CFLAGS
|
|
||||||
fi
|
|
||||||
|
|
||||||
distutils-r1_python_compile
|
|
||||||
}
|
|
||||||
|
|
||||||
python_test() {
|
|
||||||
esetup.py test
|
|
||||||
}
|
|
||||||
|
|
||||||
python_install_all() {
|
|
||||||
use examples && dodoc -r examples
|
|
||||||
use doc && local HTML_DOCS=( _build/html/. )
|
|
||||||
|
|
||||||
distutils-r1_python_install_all
|
|
||||||
}
|
|
||||||
@ -1,92 +0,0 @@
|
|||||||
AUX 1000_fix_gentoo_preferences.patch 866 BLAKE2B 836e42f394db6233ec4ad8550fd68b427f12474a7dbbe6671da4b60ebccbb762bb8e4096838569e58b2860bc3ad49dae7e66fa03a3a994228f043c7b17a6de95 SHA512 60693c96667dc6bf34bf0b58e4e06a50041b69656c1ea3b945521866a1ae86887169d7afb1afbe54e6b5b6ebb87eb6138fcba716509627966374a933b8a00016
|
|
||||||
AUX 1000_fix_gentoo_preferences_78.2.0.patch 494 BLAKE2B d9da6f2ea0b9a1cdd0606faa84a6f28d92e08ae151005a90516421808006ab0b48f4a5985d4393b3e8a2002e1614c819826610032ccaa091e98d17e7b359c668 SHA512 703758a66f7933b5dfbc1982f2db25c31f4bd9b261b4afb9c39e7d2e301d7d9563cb62dbe9d7541ab9ef178c1b0a51d4be53862f264ddb0196a80479a8d0d21d
|
|
||||||
AUX debian-patchset-78/debian-hacks/Don-t-register-plugins-if-the-MOZILLA_DISABLE_PLUGIN.patch 794 BLAKE2B aef2b8a6bdf1c4f870984d8921c9fdbdb402b6c1caf11c539c689ee5d65708dbf25e74a1a71067cb721bb645b45f2eeeff736a46edd8ca7aa00abbcae10e53e5 SHA512 e2603a30371be534b8c2031403c975cf40c841423743566ff0e9b26defd4b68c4b8af097a685fd4c7f07b3f9753914bdf566828e051879a362b38077035a3585
|
|
||||||
AUX debian-patchset-78/debian-hacks/Set-program-name-from-the-remoting-name.patch 682 BLAKE2B 5bcb5956064847d334a8f906949b067d8c49e4f907900f01bedc4aa19b8633033d9fd0679bc8e6ebc2dff90ac233cc1214318375e12539911c6a963b91f94929 SHA512 7ba2f28be1bde60c55f76f34af8ef1c3a2381be1bdeb092731f1ddc44e32ddd07e14662be8271d1c8a8c5d80df836201b2535e35ce5afbb8f9eb21f6ce748b69
|
|
||||||
AUX debian-patchset-78/debian-hacks/Use-remoting-name-for-call-to-gdk_set_program_class.patch 1176 BLAKE2B 8a9cb76c3bb3829b84da1fe93d81146fa5765293025ccaf97ee88a3e2bad15e10c10b33ef457fc8b899df433bfdcf31f0afcc70f04ec35dc97ec4776ed5fbb1b SHA512 1c102aa03d05a1be3699243a136d02ada2a5b4816147e71c918c482defbe74fb7733727edff327d3c45cf53d219f5da3bc5a597b3f3e2246aafbd34d01a6e659
|
|
||||||
AUX debian-patchset-78/fixes/Allow-.js-preference-files-to-set-locked-prefs-with-lockP.patch 3079 BLAKE2B 493f1265115d01288bf8028897b3f1f39af269ea1ba19b8a7c0a68d22c72f3e611d394480458da44c4b0b833a4e6e84a73c0bb2d369d4ae17b4f47b83d638c27 SHA512 5a33ca6389ff0f19674f7db42664ecf1944db2cea245b98051f2d909f86e2937ac978c6d8e075b5b3a23dcbc803160e24880ea20856b9b4b40dc3c4266f2308d
|
|
||||||
AUX debian-patchset-78/fixes/Load-dependent-libraries-with-their-real-path-to-avo.patch 762 BLAKE2B 577dfb03f32ae795e434d141384660ecc35d69ff619371e6dd939e971fd6c6180c863c7c0a08657975037a43054fe5f0d77135f77f3a8908bc973ece1edabfc4 SHA512 27182012390f9ac0f532650b405cd94f9a7abc638e88fee340d425c9c6b23bb91c5a11743c9feea61acfe970496851134267412c9c7c9c4ce65066e8a9c07748
|
|
||||||
AUX debian-patchset-78/fixes/Properly-launch-applications-set-in-HOME-.mailcap.patch 940 BLAKE2B 4b23578f1bc7f1db113a7d2a4e146666de454bf3e60a1ed9e76d4d845e75484de01a9f59a9d5305646dbc778b520e5dd5363e877a456579b982885817dd1a649 SHA512 443a3f8855f629d6f50b557e689ad55706a6f8a2928b2b78e2bbafb7d837fc5a422b513a8731c8f1e328ba0534dc04a9f3c8d262186bf63290800e7d9dcafcf3
|
|
||||||
AUX debian-patchset-78/fixes/fix-function-nsMsgComposeAndSend-to-respect-Replo.patch 972 BLAKE2B e982becf1f14fcd836bb37d1bb939455c9d91402b3551a831cf7833cb04e77111a609a96ca9b97b63e938e01b4ad2bf399f24f28e0abea7bb90602d950782544 SHA512 0d0cdee4b5af4c65acc374d91aa3b2a2c4cf890b4f330f63003de2d00234c011e9a59d4400fdb4354d6ce4764bc5ffebdb390e284e5f2b2529b5c2279d1feef2
|
|
||||||
AUX debian-patchset-78/prefs/Don-t-auto-disable-extensions-in-system-directories.patch 989 BLAKE2B e81f5ab142ed4d964be482aa40aafd4e7385fdc1cd893d95ed7020fb730f077b99e0badfce041dff7a3358c403d4487556371a337f77a27d9a31f49a8f5583c3 SHA512 caf9657666cddbf29a185deffc6ba08a2ab63cd29ec078772a5eeb5d098b7fe7ef9a95c5149e3c613d4ce36e21377114e7e00a19e7b2dcc3129d5252f3e9205b
|
|
||||||
AUX debian-patchset-78/prefs/Set-javascript.options.showInConsole.patch 1371 BLAKE2B 80bbf243cfc501920a15fdcd4c36b2b52704c59713ca5fe6f8c898539fe09439eca4006d8975cb1432e5f42f03e2f570b7c5d645c779c0af0278e88166a0be18 SHA512 41df0ef9c05e214f16a9d4c31decdf6f8b06e79b3a39251138db9e341ff33f2260a71093d84ce389c718510976b0c9dacaef8f0d5c66f5dbc2653a3f6c2ee9b4
|
|
||||||
AUX debian-patchset-78/series 574 BLAKE2B 6e198b8765ff782957c5ffe6510995739634a773975ae80549a232807a9bdfb02862d64fc2c71df87db5547dbe446012518a44c699b012988a5f733d52ca22ed SHA512 e874a9e81c5d25dd940edd73a19fc187c2277621fd567c5d7489b4deac2068001eef180a6fac5628cf60da66004e9973dc7ad2332ca80be9a37b901e8a9465f3
|
|
||||||
AUX disable-auto-update.policy.json 53 BLAKE2B f8df63721191d84d8f1ceec263f63c44fd5dadeae0939baf9a4a6b1852516722b2a3d94b8d403cc7b6c6b525d5236f357ab65a72d716aab1f5bef47800b5a18c SHA512 5ed67bde39175d4d10d50ba5b12063961e725e94948eadb354c0588b30d3f97d2178b66c1af466a6e7bd208ab694227a1391c4141f88d3da1a1178454eba5308
|
|
||||||
AUX fedora-patchset-68/Bug-1238661---fix-mozillaSignalTrampoline-to-work-.patch 658 BLAKE2B 4018934ba8fd277cb5daf9fac7f8aa47fadeb663249c3dfd54c38ba14d1cef58097f1b4cc294f572d814dc0f3834e8c9b4c21341c22b8967986f06813b49b34d SHA512 8ca4f72f1fc0a7fc128f05112d8f77be5350826010069ee3b787989131f02b82d014a4781e97ebe5694852c4bb5e87bb5313e562cfb7cb2afb6f904124027e13
|
|
||||||
AUX fedora-patchset-68/build-disable-elfhack.patch 591 BLAKE2B 800a22c64280c2eebf906b4feefbcca7037d8f1c914e79c3b1f95b3d783edcadb2e657f0003b09c94af94dc52fd7912c287f395cde75b94c9ededd19323559ac SHA512 7b672d01d9529232ea0a875af58481d7b86ce23e8dd76fd56bc2d0892f0ed2bcbb98c2ca21bb3fe5bdd01243024222f9726f709d75cdce49d33e251acac1138e
|
|
||||||
AUX fedora-patchset-68/firefox-SIOCGSTAMP.patch 1050 BLAKE2B 7944d6f1bc11fe1d8e6eb586a969ae32d3630b1da3c8023ae8ec483fd2e10c625f4c383f13a0d50c91129faee5c258bd35bd67bb22c1dd6666938575ccde4332 SHA512 721341319774f83589998396fcfbaab83b38f89a767ce92c68635ab52e30406689cc611edda23d56b767e0860c8dde3f091e3580d27c5165f4bd72ba9976ae84
|
|
||||||
AUX fedora-patchset-68/mozilla-1245783.patch 504 BLAKE2B cbe67d495c365e09f47de1ae639ed9e23e04881aef9b29edee1f33e71e567215d81ec1c08410ad59565898eb84c6dc87b2bb5b8d0d043cacaff4009f32292120 SHA512 8d912f1e5d6b00d1a29de6e3f232a454114d0c5fd41c89c07e943f0a1ace2f1fe45216166d950ac3bf72697fb27b3b02c7336f25f29414b3130facb42662e46b
|
|
||||||
AUX fedora-patchset-68/mozilla-1353817.patch 713 BLAKE2B c215dac508d28b33ca083d6408b2d486f8721dae454403df7ad16c7bd7e091fafc431b5b6adfcc1d62a0ad4114e7e791eeb7e5c05c8b42da3cfd4434c222622e SHA512 1ab1cdf21012364e6bcdf5f10197faad74c725a9992006e0a9efb3fc8b7ba965cc230be9740808519cd0f1ec70021d8b47686a22279024633861320602727499
|
|
||||||
AUX fedora-patchset-68/mozilla-1512162.patch 946 BLAKE2B 98eea456eae3f484fbeb05f17dc231686fff836593e0cadbb19d0e477fc1f21cf33c9dc974c5c70ddcd97e66443de667ad59539a9df6a443b574ae4a9ac60955 SHA512 dda5bbe45d3868e34c53b42bc758879e3c657b8f1afcad95a258dc76a0923db6cecea15e1fb5aa7b9084e91cb88d46e5c0c46b5373ea1a32f4c4ce1e9b2adc3a
|
|
||||||
AUX fedora-patchset-68/mozilla-1576268.patch 623 BLAKE2B f422ae34afc9428e66409758f85025ce4da9281c10ef008830fbeb4ee5b226871ee64b6baf5446b4144ae1e76204d05cef54f62df454bfc3bdccc31552620c4e SHA512 d778bcba00c614a22b85a2b47ea76aa146ee5a50c6391bc1060b9fd2ba7a5c3b2691e0aed54c5c5ee4a87a4ec3a4946209e4c73d35f63ce80425015617812bae
|
|
||||||
AUX fedora-patchset-68/mozilla-526293.patch 702 BLAKE2B c94cf20d8c4d1816e66ec4dc320822518ae7e65b3d745fb8f0bd844685a0c692a9ef059fe99570084547f4d8176c933728fe2fe04e9197113b477307afdf7863 SHA512 4816376a8924f61c3f6b3864033d75f44e216f1b5834327eccf4ed57582f3ef2e0db56243a079e5326ff662d8cc65c6b58eb1880cdcd5c8d1e5fb72429e3dbab
|
|
||||||
AUX fedora-patchset-68/series 245 BLAKE2B af030ce419e729778cc2e3630c88a2a3d51fb194243db601fc052e4c9bdb83740ef2d0de9ff3b98ff7eb2201affb2142505b86c3630c603e3f61ce5a792a0fa7 SHA512 df07e154b54aa5e0e6fa38a666a6045bd3251284d1814fd3ecc87989bcdf3ccdd3c90a3d3568ef546fea757f627c4a5e00b3cd1635d3b7d7f93d930bacf43423
|
|
||||||
AUX fedora-patchset-68/thunderbird-debug.patch 645 BLAKE2B da8329c886351b7fcbaae2a8cf9d68bf47675ce7eb46d9b685a68662d90c0bf236f569ae209505b4e2ee02ed0012e0fb92a5d1b15b450e3f156c623b961c628d SHA512 5e533428415fb034414ba0a1fc747dcb254afce8ac85682fa6245bc49445c17f4e978473b70ed24d9c0f2af02635fc18b579a3ac85c5e58e8af9b7a9d88d1a9b
|
|
||||||
AUX fedora-patchset-78/Bug-1238661---fix-mozillaSignalTrampoline-to-work-.patch 773 BLAKE2B 3d86b01bf1cc3d797de8b3813888c07e44740fb5da08de530d89060ad43dd316f5c98aeac4cbcad1f0fcbfe424c7ac16e0d82c30b62edef0225f5d0c84e3ae26 SHA512 641ea749ecc2ff97f291b44e704be23163270d0cb9c920a634908499b115700b4a2b8cdd924486bbad0677407b7137ee04208046ae0a8c50f75dd06777a57b94
|
|
||||||
AUX fedora-patchset-78/build-disable-elfhack.patch 591 BLAKE2B 18159f6c5b5c2a1f2bddd8d6d63ce5f402cc9de671a89536a4e03c2602da5d6e35dd9d08e763d222f2d579da35b5d2b5f3781013b84f1a310caf9d6a2ff22a2e SHA512 57a07f1fb01e5cded36f1a8c9a3c29a7bc74f1d10fd762524a9685f8fa8907cd204f30fca54a3cf4ae89e9844e707d9158105dc362ad9f20e45b6a20d5dbec73
|
|
||||||
AUX fedora-patchset-78/mozilla-1170092.patch 4392 BLAKE2B 490708899793871875fe1e3eedd2df3c4c1a4330a35f9bc3b3d56f514126492ca39ecfa78979ebb5f618e9fd69d334f62672742ed1e19b1e6b15879f0984c25f SHA512 3b839c3e6a6da78a3a9fd59fdf305baa8cabc95b1f50788135ef7c91c9f6c2b8596ec98152dff97cecaa58bd6e25edc79129d9cbc9d5cff241313a58e4501f22
|
|
||||||
AUX fedora-patchset-78/rhbz-1354671.patch 806 BLAKE2B 8a4e598d86c9cb510223e552603f2402e843b14eb63fcee59007da2d61574fd759d8dcb7dc882bf0e9ef52d75c5e1407920741de67f94905e6479fa1087550bd SHA512 0663f3229d9ada751789b82e25014bda25a07a17766ab93bcf47d86be449e8d13038e642336d5f6a9dfa1e62bd3c1108d7e24db10e147d6c698df2eda0684620
|
|
||||||
AUX fedora-patchset-78/series 128 BLAKE2B 3e003f84f11bfaaf0b9b0d9e89c0c461e2a02f1a2c065b46457e9ac57e990e47241300ae49ff8e107e0f38cf7a5b8032bb21a264e03fd81686c2f9e3ae384c37 SHA512 03b5758a6ac25b339cde90846528dba380098522c048179ab51b1dbc966503be3ee0633f6ebabce3799f6608985293e71c6911392c470c8ebe47e0055ddba002
|
|
||||||
AUX icon/thunderbird-unbranded.desktop 299 BLAKE2B 342496f534b80ce6eae65872ab1750ef3eb0082efb97f9163f5230020ee9a306a24816d267a0e2a859f282e789b212b95e47133435c8961a0e157d50cd63ea3c SHA512 53794c417370dd1e319d32ed6772357b42bdca3fc5c5404b3af741734b8f69f455bf38dd0d6d0f135bd6113889b15b09217351861962e68305473380fe0df31f
|
|
||||||
AUX icon/thunderbird.desktop 289 BLAKE2B f7a5b63b3ec256d66aad667b411cf3134cad6c5e4d8b61a3b87c6e8fabe3014b1542afec99c5da99a8112c6295845d8b302f6ba0af296d3088ab096de132c1c7 SHA512 bd0b672ae60ce0ca8cbd5a8ed883736a9bc7f05264679beeecbbbe772bf5cb4087b07f8a8ef5b6330a0edd01d35307d73f395352cafbc0457d0d7c325af9318f
|
|
||||||
AUX opensuse-kde-68/firefox-add-kde.js-in-order-to-survive-PGO-build.patch 1056 BLAKE2B 826265278490c3f4dafb6f0124b91f4bf73961776e8d29a349e825e94dc2727a4977e819a174f758f65c81f0e8c884a19734bb370ee43275133a7a3ed775476e SHA512 83645f46c95cdd1ad5aeab6bb6f5dc715dc761959c245b901e49619faa13d2643fe623f6f9f2432f233d0eeb157f9a4683b10bc7d18544bc6759835ba7940bed
|
|
||||||
AUX opensuse-kde-68/firefox-branded-icons.patch 1877 BLAKE2B 8d7d84b155ccba584637a9948e4c3966ed895003ba23d43632b69a89c9fdb4cb01ee6f2bfb9257c2e8786c29fa4a05110a9fb0e7bfc561697471c11f070b0766 SHA512 ef717b1480f94f4a030c36a603f368e10caab2b7d4783ebee8767234507d378242f4708e416a282ab77887afaf6f63c7ac8d231436e0dc466e7b893734743dd5
|
|
||||||
AUX opensuse-kde-68/firefox-kde.patch 83135 BLAKE2B cf147f14c6ee9bf60f1627a416e9b5fb12b7a6ab22ff86c75a10dea590f9ce2efa060ca00624a4bc611370ab5c7ad566ebc9234c43e5023369a0f3d40f66e04d SHA512 477f35750230a5913a5a955a4b2e7e74e600111c1d358849bc222b442dd7e17448fd618d1ea04051b6cf0756949c6c6310055e1644315f96fc9db6fc8d771415
|
|
||||||
AUX opensuse-kde-68/kde.js-1 136 BLAKE2B 94108c64640e507ddfdfd5f1adeb5ce417ef876a939ae0aaefa679a0b6dbec8efe0360270ae9a8a1bef78db8eb29702ab9307d8ccd8713db3d3b7d5f78be4dfe SHA512 b3cf3de810ecd9fc91814a5b95924446a52a4ae04f4da42c08e84d51bb08a83ad78e8bfbf89bf5a24bd21de9d3ff7d2fcb8257687c23317ac2a1396eb578a773
|
|
||||||
AUX opensuse-kde-68/mozilla-bmo1504834-part1.patch 2558 BLAKE2B bbf6c4618feffdc369fef4811211ee18b22c94f46a355b69adaa89ee57e4b00d3d51fb58facf771a71cd452b021766a6bc262db5930568e78fdae1201d48811d SHA512 dcbaa1e44334a9c8bae0e8be8a5646a59236ce92fcc6eb9f0f212c044146da03e1fd6e77b07e55bbb5279a6c0be3926a3cfe0d10a2536104e0483a9afd476037
|
|
||||||
AUX opensuse-kde-68/mozilla-bmo1504834-part2.patch 3337 BLAKE2B 6ae446cedbe490c85b7450b56c49c615af34824740fd3e031a2bb38c717ea16f9b26ad4fa80550ac17e7072a82ba8015b33bd266dfa41d5366189795e42f264b SHA512 f2cf5ef4d01a133b7b53d15a2cbc6bd609b4028a738ecf2570478dc1ff27520b64d2d64f874ff1f613e7bee3e43a640d87f2e1c03d810cc164315dc7f04c61e9
|
|
||||||
AUX opensuse-kde-68/mozilla-bmo1504834-part3.patch 2327 BLAKE2B 0862cfa63d16ef75a711da427fff315e216a8477fcec8d92d5390af742d2702e4e6067c23dc22818cc647261fcda305aa42089c1c0bb5e77a693e7fb86ac2af8 SHA512 c717963846beeecad6a556a7e76c8757090f1856963cd53a6e3bd49992caf89ab6449dde308886b307d3452555a49289cf70ba3904624ca938212b44be6da6ba
|
|
||||||
AUX opensuse-kde-68/mozilla-bmo1504834-part4.patch 1580 BLAKE2B ddf4b0cee96f72de9edf97274288189ad6e9b008e0f6a82d4c59376ea71583b0fff66826766da5cbc78dd39c97045220497c8db532a56a9b8d98a649629fdfd8 SHA512 7a1fa27e060b2f025eaebbd39fb5c62960b62450241437e6d057d58cef9faf1cd1a85efe3b6a37b865d686ff18e90605ebea3089b26243f2d14876c2107106a6
|
|
||||||
AUX opensuse-kde-68/mozilla-bmo1602730.patch 1153 BLAKE2B c53bc592424ec7d689e7fd3111ff0ae73421972665a4f478a92a5a93c8ee76ca288ab8da6c13bd185b777206a5291d7504ce84104e215cb960e1e4f470528f1a SHA512 e731e2e0d387669b76b668ff9339b610a2f01e9d30374e6e6f0caa71b670d617c3d47cc8bdb1c6c636767f8b3a8f321ce8fed20cf2c5862b4411eb4f8fbddf77
|
|
||||||
AUX opensuse-kde-68/mozilla-bmo849632.patch 945 BLAKE2B f7ba4fa9c2f7a9bf94d235fb72a4031d2780139b61f0b22ea5de708764ddeadd512107178c11eda6663ddb586d6a68e4e482918a1e40e601da5ccab95d35169f SHA512 ce5802f711690a79a3ebfeef6617d77c55fcf4f036b802e56950bb01b4d870ed916e66e3891aa2abebd29fc57e0148c6113bf081d62b6dd69051f06bfdf3e86e
|
|
||||||
AUX opensuse-kde-68/mozilla-cubeb-noreturn.patch 592 BLAKE2B 2b85cfaa7a08c83a1e59c5c175c530e2096672ae86bf20b841cdadda7cc882c10cb177772d3580a3469d896120b17433e03b987dbc33fb6d01c621cd58c4ff0b SHA512 9d10356f299219e4908ec028d1d0a0dc4850aacedcfcfbfa6db24b1846348bd304325b234f89e17ccf9edc29697d4b48fe61585c35fff8a37286ab6bdd6b4b39
|
|
||||||
AUX opensuse-kde-68/mozilla-kde.patch 83519 BLAKE2B 6987d28629984ecbf9bb873578624e67fb369e8e084e0c697dfbb9bcc16817709955529bb56bdc77a2d684f485461e44da7abad70a7baf482be6d924b1c0e3d1 SHA512 91d5b3c77375719b8b56a0609d228b951b50ce4aa1c6e13f70f3259b79918cea1928993280722b2110f472cb0f5d511421922755bb2af300b0b3f25d1c8f032d
|
|
||||||
AUX opensuse-kde-68/mozilla-nongnome-proxies.patch 1442 BLAKE2B 3ebedca60f1b40b8079f652b20a310d9d677516e85de7a890871589e61119182bddd9d224d66d9e473f01e8cedfcaeb01969e1de1e947232ca359d20fbfa86ff SHA512 fae7ac214cc021adfcb8a66bde9efd90c65e87e5b991a6f4eb3d34b711a9b3234463afbd7cf0ab08596a4a16365d5ae44d343c9b5918bdab78437eb0d8d75bff
|
|
||||||
AUX opensuse-kde-68/mozilla-reduce-rust-debuginfo.patch 1498 BLAKE2B e77f92a3296b64ee016b0ce693532a50ffbd3a40568cbd01d7287bc4b2475e917cf8beb69b22e9d62f82b07ee5139c0e640937890f857441a2e68d0c64923180 SHA512 13b8c928e2ea95dbbedcbcea263e734e9aff7328c0e441454afc6eece52cc00403d4a26ee825e495da237aa0fd011f950b3968721bd08aa3b28b0938c29e9e5d
|
|
||||||
AUX opensuse-kde-68/series 389 BLAKE2B d6c8235acaa17b418ac86350f7263ac1b51824a46ad2a2c8a405c3effb96f49d86af151db8435dca01011a56e368729a16aa0bf0abdc06ead3035ea612ead659 SHA512 cdf1ad5f8cdd8b86e21686742333b45d6ac517d3686af19b66ee38ff631f6f0c4160171ca9993130c2df535ba12f53a107ede685a5a765b1583f0d7ba9957894
|
|
||||||
AUX opensuse-kde-78/mozilla-bmo1005535.patch 894 BLAKE2B 375437f2ec0e1bf824056d2e481b77b9a3e4cdf50a69f81fbdf7c179d25e013b98f0fa940b3e704bb149a24eeffe0b2339fa04b4169c0ed4b4dfedc401143202 SHA512 2840f42528da56ae8285fbe4b5bbb926a37931a050772c348f32f38751c084adb2ef96320ba80135e9022458cf177ce9662b1e8f5a94e8e12aecd7c89de83bb9
|
|
||||||
AUX opensuse-kde-78/mozilla-bmo1463035.patch 1814 BLAKE2B 084b2454a75708917b7f5899cb6ea0e99b096ba8ea3c62e83c3c9f8f7aa83588f0ec46a8415f8b8b3f20af9d58c007906af09e8c7230a117fb223174ec346f29 SHA512 01c809169c35208327f6acf7e332dce6bbe6be837d2b1b2da4a21c00876e1d560f424619ba305bdc8356473f74549b038391f6194afa02436d32d7ba65d15576
|
|
||||||
AUX opensuse-kde-78/mozilla-bmo1504834-part1.patch 3981 BLAKE2B 02123e2600931122bdb5a5b1a74823d2d24f838e484f19dedbb9b429219ae009cc99e8349f63b2bc0991255a83f5dc293b26cdf97d6b93e3d1fbb9dd6bedb913 SHA512 a2ee4e00bfdeb984b72fca0dcc06063fce4214b4173a70d1ced6c08bc2f2c6a73d007315f4e84d27e9e77f2804a3e4efed211ca768c3c4a90642ac6467fa4e0d
|
|
||||||
AUX opensuse-kde-78/mozilla-bmo1504834-part2.patch 3333 BLAKE2B 23ab15b2cd9c6eb3500ec7d64b46698b1b5d4ba057d1eca8ac111c058643031f0259ef13fff9665918fbd1cabb5ed6fe37c7769216a8c8fd9da391ef501ba4b1 SHA512 5e7d35259358ae1523e3d3b07c3cbdc4faeb21d43a488c475462fffaea81e027bab0ce16a22009fcf3ec4d70ddeaca560b1b9a321f448c2d29d04ab5698ddfce
|
|
||||||
AUX opensuse-kde-78/mozilla-bmo1504834-part3.patch 2389 BLAKE2B 0a47899c197576224737cd65eeedae48027a53d66034bfd16ff5e69ef803b64fdd361e744c835bfdca91539ba7d8041262e6dd0b60584e8a8379f6554d5227a2 SHA512 9152bd3e6dc446337e6a2ed602279c620aedecc796ba28e777854c4f41fcf3067f9ebd086a4b63a6b76c2e69ec599ac6435b8eeda4f7488b1c45f69113facba4
|
|
||||||
AUX opensuse-kde-78/mozilla-bmo1504834-part4.patch 1582 BLAKE2B 71239949ca2f9fa5d4d145bea6ff1db7fafa2f5c497deb4083d2472c1a496b3b88c8d54fc1b2cb35119f51c1b7ea1aef383ca4d4eb5431f5a647204aa30eb780 SHA512 0d4873384cdae68502df50fec1e5cde0e5989f949a0c68874234391f7fa674d7c064f65f144bf6d3d7b5d1d9fca3b8759aa6e7bb007f0fade5960769fa42e832
|
|
||||||
AUX opensuse-kde-78/mozilla-bmo1512162.patch 1213 BLAKE2B 35d456074dfcf4d95f53cac9e523389457eb22151f0775a71f53db7977e8f5c260696f052ac3ce62a1fc50bfb1bca0a1a1c6467b3edba6457afa8f724652023b SHA512 8229cd60f0d60729c228d9f62473d2368a792db827b9972ba341f127c670643c86df299d8841af6df80407d1864c988002a17ccbdbad7d351c571537381a056e
|
|
||||||
AUX opensuse-kde-78/mozilla-bmo1554971.patch 1065 BLAKE2B b07d1ba72eb5314e680d4851afaa1e6210117a18aaccd76fd2dabfed7d1dcc34359ee87f1f9dcb280f650f83f3051ec31c9a86e61d83df7754a91e6fdcc845a1 SHA512 1b9de36d23a07eec0fc6e58025b4bd8ad17f7afd8980b60f3cd336e352b85a1af758931a9be0268311cf64f2b7665cb9457ba795808d1312c6892f3d89622819
|
|
||||||
AUX opensuse-kde-78/mozilla-bmo1568145.patch 1078 BLAKE2B 3fac7f048a7d06ba732a460d6ca6fd7b5deb235f331512ee752e7f90863acd581e218a7501002228b9da5acd05f2ad340049f54054dc8d30db8e3995a4f92087 SHA512 8da1c32fdc6356538289b8c9df9daa23cf2f14cbe1de10453805ba0c869cea144e600b56356cdcddb00dc4edff8ab13106fd50b235f37ae1504ae1800f1b6758
|
|
||||||
AUX opensuse-kde-78/mozilla-bmo1602730.patch 889 BLAKE2B 15e0383d08636a95a80a201a82a3c6752f149bb814bdd07c2896e4a709b0acab9ae1b3189694d24a3f48d74d4a669aedf1b5a3df8046b74367b65c4e7f414356 SHA512 26b32b96768c21480311ddddad5742cb60b1617688e18838a5f92656aafbaac5902b1ab5d92f239fa9409713a7eedf993790a2a1f71481993f2fa8fcedd57647
|
|
||||||
AUX opensuse-kde-78/mozilla-bmo1626236.patch 3313 BLAKE2B 086a9d2af5caa42600d1a0b3df72954f13444d99f4a735c65e7f3092eda32636720f7fa904158ab04618077915f15a5cc1e8eca69d8b2bcc30380320e7db142b SHA512 773be00a1aea29527e8556b152f463e477f025785e2ca98ca12804b3a5783444bdf4f6d6765b167f64dce3110b91af5efed58c1744d35b2da187d1b4eac8ed59
|
|
||||||
AUX opensuse-kde-78/mozilla-bmo849632.patch 947 BLAKE2B 2a2f78222a45c6a1fbb0f1d71c90d9a4e0827ab50d49070c6fffc1e8479df55b90ddb7552f4dee8eb6a76f260001bd53e558f3a8230897916a22c8c8770d2bb6 SHA512 674b4f40ae96d3a001af573505e5f0a647367cba1f9edba8715a2999ade21c22e08f0daa7a635602fcf9f4b6eb63667f7bcd4a84bbf958e0d1594198d5463949
|
|
||||||
AUX opensuse-kde-78/mozilla-bmo998749.patch 1000 BLAKE2B 7c9c215f6fa30876fc7ca074f022f8b1250dc3480e881b75a283b28890e7ec4a33848042e839d056e9efc425853053f3c58f53827c330dfcfec9bc7bd5d6186c SHA512 3216e96e7cd1624945595f016fbe76a699d8627c60250768857c74c2453e66e3cc9207bfbf486ea1be5685b595bf1ae4626401502f723e94320c42c7b12d0785
|
|
||||||
AUX opensuse-kde-78/mozilla-fix-top-level-asm.patch 1623 BLAKE2B e53e729b3bc40ba5b676c9e972a4ebce30b65ed8c178c6e5f9e216af49d86f2a7e91cd0743bd3d424c0d67dad724be8784c07a4da8a84c90996027c338027067 SHA512 f3d62f72fe7ccf84cd777503f871eef71ab7be155bd11d49168809061338cd9eb68f268d42f63e64db61e4adc0777d2439bef4cb8c8d102a4630894c0937e69c
|
|
||||||
AUX opensuse-kde-78/mozilla-kde.patch 63434 BLAKE2B 4d9e8fe360d7adf73bad761960bf23247f02659c16734041652928a56ad543048f2c34d96d23849942bbc3d3407e69175d845eb3e81126d7bdda8c59a44681cf SHA512 3ca6d5e7cf5cdb66a760f0683320e0253f46c59bbc47e80f9dc67aa188254276c0ba101174f9c82a0e938d1ad22399794d10f37a582d90cb7d428e2868d24d0f
|
|
||||||
AUX opensuse-kde-78/mozilla-nongnome-proxies.patch 1442 BLAKE2B 3ebedca60f1b40b8079f652b20a310d9d677516e85de7a890871589e61119182bddd9d224d66d9e473f01e8cedfcaeb01969e1de1e947232ca359d20fbfa86ff SHA512 fae7ac214cc021adfcb8a66bde9efd90c65e87e5b991a6f4eb3d34b711a9b3234463afbd7cf0ab08596a4a16365d5ae44d343c9b5918bdab78437eb0d8d75bff
|
|
||||||
AUX opensuse-kde-78/mozilla-reduce-rust-debuginfo.patch 2433 BLAKE2B 4fb6e74407d3ce369e745ded86d144e73b1e0da662e922582c6b9f639abaa44a2351cc481ee2b05eecb2eee9dca770cbc79763729ebcf5c267c83036ad2a868c SHA512 c78f37542cdc9329bfe23d8b4ddccce4339b5b60754c396aad43cb80c9d401568260006cf3fe75b335b7d6ca57349c38033e06e0a575b14acb031050052c3fa7
|
|
||||||
AUX opensuse-kde-78/mozilla-sandbox-fips.patch 786 BLAKE2B 5ef59594fd8db736074cea3f46de8f71068f1baebe4572494e42e1996bfba2b23a9600171ca5f505a720ecd99c433e3e2db1b7454eae61d2d618e6fca3887c27 SHA512 ab466d17087afc6f0346ad6d98324ac9709869680b45ec0e189ea4e199374a2ea396a735685a7b802acdb821dad4c5cc2768f14087222efe68409e3fb13bae65
|
|
||||||
AUX opensuse-kde-78/series 491 BLAKE2B ffc1d533369011d904ab1a5b5dda276694475907deeb86321569068b39674008e43c642b89271ff10b1b7d0aaccc47ccdfe1f364d6e11b333ff9ae4ce232b45d SHA512 044b7cdbfb769b017f8c77830815a0531998378d53e751ec2cdc5736270aac8b25b3cd3c5d843304e45553a33728e23f05533cd40eb795234b50b4739617cac0
|
|
||||||
AUX privacy-patchset-78/firefox-60-disable-data-sharing-infobar.patch 322 BLAKE2B 29167c33be12f2ca8c20e492bbbd3dadc30c8aa7765b51231fcc5e880a984a9cc281129b6f307f2b5e06acbbe298348bb5d86c7c015528583ed87217a1df2a53 SHA512 5b21d0ffd5779296a84d6f180148c222c0ac28538fe9dfb2c1917848ee91b76919adf9aa10262e7d3275ad0f41da406b9ae12f8739d9e48d5730ae9e18b9a998
|
|
||||||
AUX privacy-patchset-78/firefox-60-disable-telemetry.patch 381 BLAKE2B 7ef96502c6399a52d1fa64920e899a5c65a505da879822d5b704a523ca22d4e71d27654314a4b23b9ef5930633f4c29b5e4455f20db3344dc21f8ffb642c3701 SHA512 baebbb78f251475825a2d4c500d4d78049b633f1d6619781470babde8eb57eec72987d436966f262a22842258d3de684c3d14cb7370e8b7bb63bdb917ad29442
|
|
||||||
AUX privacy-patchset-78/privacy.js-1 3268 BLAKE2B c23c5d9a2f1fe41446ffb49de09bff8514fb791b812ca4f7d64d6116c424aabfe4150bf3693fbbbdbe8941ccfab77a895993d4e589c42f6729191e5fb3ae1869 SHA512 9ca00c0a94e5a3a4a376863ab3c97922db219c1aa8193884e6c488c852dc4e7402fa41cd56e1aa21cc7b228b689c0bcb9bf9eb3dc708ca08145f18883986f463
|
|
||||||
AUX privacy-patchset-78/series 81 BLAKE2B d92ae7b0e5f27e78cbf071509b98eaf8a103d315cf0795dd8f100f79fdb46f5009e4d2bf78d5a20c9940c400836e83bcda2a94547c476cd2104cc725bb8a12e0 SHA512 84bb903f2da23b08ddfeb30c84258f8516456c29c24efec1dd1e718248b0c7b1fcaa3c1a3c76da0df81039312197d7152b4a4df6e72ac690fedc69d30165fd2e
|
|
||||||
AUX thunderbird-78-no-dbus.patch 11798 BLAKE2B 512942e4c6b5eb160e0974ad4614daae31bd51ad49b8fe871eedf1f7ea96ef1f624443ff9e775ff5d186a4d8e92079d26bc026d6149aa52121beaf83bc8cb5c5 SHA512 a9f9e8cf011c954afb080a89b97df1c7b9c57cfc78989a7837768b3af749a72c261488bc1bb2ec1207db7a7fe5b454aeed5f4f5114c715d74c5c9962bf04908f
|
|
||||||
AUX thunderbird-gentoo-default-prefs.js-2 461 BLAKE2B a18e1fdbab7ad81feb41af75e60f48adb960800849630a6f9253b7bebcd3e7db33b2517ad0be6302609545a5464b84bd5c5fc67a07fb2ceab0ca1ad98539bee0 SHA512 db115d89a094c395636e5c008307c7864cb084a0a4ebd024d4ce33cac12963cd4a9ff6833227adc6a098430dc3f7ca9e386e26b87400d46920f4ef15741aefa5
|
|
||||||
AUX thunderbird-pgo_freeze_fix.patch 469 BLAKE2B 6c2fa53258f270c7a51ecbed32d7339e54430cd247bf61ed9832bb67b534e1c98262cbee6cc7ba8b58119c70ca28a7b7f2d7a658c4cf7582d5b90914fcdecaf3 SHA512 8834f07cc6045999406f3719f2653d4a41b50617d81c6edfe1f0fbcf3037feb75b4d35e99134c00ad7fb5f69859e712ea69d3a2998364dd75ea8815225908e3e
|
|
||||||
DIST 2013_update_libvpx_esr.patch 14356080 BLAKE2B e54473e9d70c7beb85762ceb39e02d8542e7b33c5f81ba4faab9a3762673fbe65868d2130ade3503f17c02c7890731748682e86aeb31369f6deca8ce9ee814eb SHA512 d8ca55023b22516461275f4be96e22d7c0a4acc299f23e2db5e15f1eec09e4f08a2e10d2b3d10c697219d70dba948751c5be5ec0ba6ef85122c419bfb805a472
|
|
||||||
DIST firefox-68.0-patches-15.tar.xz 16060 BLAKE2B f9e6cd58ea51bed1af90a9d30fd551dc7e939afcd1b4d00de1271bd4bda94021c6f1799fd9945962c14ffa1fd0b6a6429369c4e45efc2000f179b9b2e46971e7 SHA512 9cb2479637dd8b84e0ab68dc0fe144acd2dc74feca282fd3c4b485ca6f0de8190244587622713a5421b243ccda153f738e9a8f463e87e15e93e9b725d943e128
|
|
||||||
DIST firefox-78.0-patches-05.tar.xz 31096 BLAKE2B 83915ede6e9dc2241f6c72eb41f1ba9e26d70cb1f968bc6f3506aa4596d282f6c9a433ce5151c1e0e69dc8343bcd17ed517db5ad5990f744362cc80c50154886 SHA512 4cc967dbdd0c76000ce565d85064884b7040e1f50fba830203256d06a6ee1f8004f4e64682b98fbfb5580254d67e8984b19ec34cee2c3d85190a8f214b05afa2
|
|
||||||
DIST gdata-provider-4.4.1.tar.xz 78728 BLAKE2B bfe04d714334c38c932d2186ffd859583176ef455b283534c5f8f9e1ab7dc13bdfb8c15db6007de482ab015afc2b8524aad725380bec75ee5f59ea81d6307ba9 SHA512 6c9b5ac41a1064bd1799d2a2f633c3064b27f1294ac3c8908cdef6c1d2eea7b602f2f7bf240b71f507fe9ad286588f030e12f49a41b3bed7bbcc99f3021369f9
|
|
||||||
DIST lightning-6.2.5.tar.xz 1745976 BLAKE2B 31e237f8d34ab2a2ac522767460467257d1f49d15fbe24f5b80dde9fb709ffafd0c0442d99c6643ce434cf7bdf0d670447f86da9fcdadc7ada6814431ef41e8a SHA512 1e997bb91d484908f225cc6e971874d308e8a8e2451a3e678f8a74bcb9e360babbd1f8aebcafb3e628ef5b10eb697ee47af2bfedbc956fee71d99084c8816235
|
|
||||||
DIST thunderbird-68.12.0-de.xpi 597804 BLAKE2B 240bdcc509f5c7a79972b9be1bd333cd1c09e27ae216d19486c5cac0c59bde904088d8113101d26bd1c078dc29b89cbfd284a8187a98a6eebc649bba729bdbff SHA512 f7fc5eb9ea5f74c257ffcdcc1dd450f0cd0bf2a247e893ac251a26fe9c7a4e2b83df4b9fe71c3eadec8b86fa525c0a989ca76550718ed992e48e8e05f796751b
|
|
||||||
DIST thunderbird-68.12.0-en-GB.xpi 556404 BLAKE2B 44738d9782ada22595fd6df8239361a5c93c7f1886b9f682292c0e0fb6ef8242cb305b1a8838f1631d867a736639b0665edc69aac9106a9d389f63cd60720c5d SHA512 68915a4575043f54db65d6653889452b376cae01709605c7a9a176e96d44c259f9aa79fe40ffab62d697721f9ee1c24900b04ea6f8554be9834bc8ab11d3c612
|
|
||||||
DIST thunderbird-68.12.0-ru.xpi 683324 BLAKE2B 33ee0a6d363f2b39dcc50e6c6231cd4d9356bc72ebaf407bf0d1804f9d596e7e7d6f72aeffead806a1da9082962d21f9743e6169a5cc073319e737ca373e7e68 SHA512 51c60e425340b4445381be67d9b57112ccd612242f034aed113ee682f5f71f329760e0dedee63cb16471b4d2c0517a1ec5a1d0cc0074c8791049e7115580e16b
|
|
||||||
DIST thunderbird-68.12.0.source.tar.xz 331226160 BLAKE2B 2712dc52cb7ee2b2d75b08907f7dbf945e89f776d12550427134de7f03538f1f4b1c7e747c407becf9be4cd70c9506c5661a9d4fa0e4d19c2499f11384848dc0 SHA512 e7559536a9e024747e3ac7c20e4ffde5adf57657d02109ea32c39bf736ad03707fc7a14a0d3f1c91fa6fd69ead3c38d6c32ce78bd468834d9ba7f77f728332c6
|
|
||||||
DIST thunderbird-78.3.0-de.xpi 665625 BLAKE2B 195d5ed091fd84c0bfb3677ae6e540d45b88ed24cb1b12b8a047092b2381e0b174258aedf2e79b5fea1787c346df28c672feec9b0bb5b8c188b2ee068b8356ce SHA512 dbe55db769256ec0d4654bcdd900fc0b449c19259c802f5363cafac86b5408b290c6442f1b6942e15c5bcd9ae99c1d2c807184949b286ad4a186078e1495541e
|
|
||||||
DIST thunderbird-78.3.0-en-GB.xpi 611642 BLAKE2B d143fa08c326fcebefb1bf61c773c6dfc4bfe15008ddfac87be385ebae8758c18d650846dbe7c2d9e6e234b3062e88913ce1e18130cd7f0efc432e1d99646015 SHA512 a06d47cf6681fce864936d89634366fa792e1423d8df7aeae575b4a074cfa948468cd4ee191769521faf2d5b61ac0806d3c5f323a8a327f0cfa826c4b368f5e4
|
|
||||||
DIST thunderbird-78.3.0-ru.xpi 756660 BLAKE2B 3228189ef7db96717e30b4630a50fe94ec4bc54fa1f787d324426b9c2ca3086456701f26d83275aca3f38a3100e0bbe7b6abfd63fab0df331cd3c6d196e72ad8 SHA512 f014a5a0919613397c702307eee261ef2babc7c88489a7081c43f10ba84a68d417491ef77ece1e0a714eb8607f2d24d4ba406714c5356006be38bd258f232270
|
|
||||||
DIST thunderbird-78.3.0.source.tar.xz 353727228 BLAKE2B 943ce3ff3de8d9c094d93bc098dc097e7334befc77ad8c097d2cf1c43e2439e7588bb4396afa06bb828f7696f075b676b8c74249da7732574bf08cb9f4e08bfc SHA512 bda68be583b499c14e734d30920e38eae527a1e34623095b62eccc486a2014d6687b3087b31f6803f798d38ea25d4e541511a73dd4c26f4b0ce042a4fe74dea5
|
|
||||||
DIST thunderbird-78.3.1-de.xpi 665616 BLAKE2B 95fc97e2aeea007b0246736fa9fdd049d73ecd07059a73b1302439985e2179e718121b624e7fd3ca9a8113b3300eff24ac41e4b17857aee2d77749ccf1103010 SHA512 6213f36d707e637fbe9a5c4962308363e682d99857a0f2ad7ec5043c8214f06b2da3a58f9ffc184fd120f99c569df6592287033267c2d71b376e366d096cd017
|
|
||||||
DIST thunderbird-78.3.1-en-GB.xpi 611650 BLAKE2B 08a855964fb3f44498072edc0ccd10b8da6b52cdf9fda408e7d613a3b88dba61206a1923ed214533c8e8227d7c5cfa336080776f8fde429b12de03e2cb6ab633 SHA512 8741513f4e9c26a1550dd4124a315d1b17ecff9dd0c2abcd16337e61f431c53beca83e01db8725a2409d185d47917cea7a4fb9c4428c4c70457958b3924ec92c
|
|
||||||
DIST thunderbird-78.3.1-ru.xpi 756670 BLAKE2B 7d09c57855488b01f9979e2f6e99ec8db318f778ff183d4b6ef83eba84f24f438e923ce60f1a8860f11208db5a6429ec9ca0ff519d46e5f38b285d0519a3506c SHA512 6cb05d8fa9f856ffc9f7f85c8a02699421559b83c15c06a08c6c91f1afd64c7e5520536d7e09557f1e1d752f2137c83078f9573aff8e876e4b23cf8f73ac801d
|
|
||||||
DIST thunderbird-78.3.1.source.tar.xz 353920472 BLAKE2B 5afcec30c23480a239f3cfff56d67e403d300be00e1f374e9ee8a594d9845e9fba4262c410b552cc2ce9b529d8cb9221f81f2367d9c6ee0776d496af0ae88a58 SHA512 16b05e51776ba16503bc5fba02a6d0b5050a206e264a4707544354ad76af61902fd2dcf5d97b82b432dc69362ccd18543a0acccd80e06648e6c6f470886da450
|
|
||||||
EBUILD thunderbird-68.12.0.ebuild 30035 BLAKE2B f6d3e85c0a471c2828524ddb7eaa9b0629bc07076b2fa498f3497e0d7fe068db424f4255ea323da999d05684738147592d46f216ec2a4ed78976b4905fa19a1f SHA512 aefc5b9271e0a2ffd7dbd503f9c8a308cff124afb70819320ddcee7dd546a7e4c231908f757e121e3ca18fca295140ae353e30870cfde2d8b0e9d7ab8b6100e7
|
|
||||||
EBUILD thunderbird-78.3.0-r1.ebuild 25900 BLAKE2B 086f2fdc505152b528bf204eabe9eefe8cdfa1d7080bf655e8ab21629ccdef1714f397accea191059693f4274339d73020631cbf9b1300f69fc4f53fe97a7de3 SHA512 102b2600fdf48554e1cc392cc0ceb5574a5ec5a086d209484eea14353c444251664755d47f1102b3b9b8d7ff0c9505b41b279cb072c82f712b08eac4a5c657cf
|
|
||||||
EBUILD thunderbird-78.3.1.ebuild 31307 BLAKE2B a341dd43fe7d372c36a0c6f520900eb429ccfdd814fcbb349cfe315caa9f2a29f1832c929699048ef6e5a761c2665b1e1e8c79d054a34a37493f42ab0f9cd575 SHA512 4fb566d1e37bafba3a47787e56703e53843b74c6954725e8f7137c13e4575c98359904b14445817f81cf0e0c290e795197dd3f69c971a581c074c5dacf433491
|
|
||||||
MISC metadata.xml 2356 BLAKE2B 6a0e1217a47df67d7c8ccd60b368dc23e5b06c717faf7cad011d3dbd34968f09d9b29bcb74dbe57365d97bb04e7afcdbf50c6f5bbe20ceaa4b10b0754d8ac734 SHA512 e5fcc661dedafae101258c2604b4807848cbbe0982602abb580600e6ae2564d56311f1b2afd9b3924d33298b3232eb0a2dfac146c56647546dbdbc077fc793a7
|
|
||||||
@ -1,25 +0,0 @@
|
|||||||
From: Jory A. Pratt <anarchy@gentoo.org>
|
|
||||||
|
|
||||||
Add the gentoo preferences for the omni.jar creation
|
|
||||||
|
|
||||||
diff --git a/mail/installer/package-manifest.in b/mail/installer/package-manifest.in
|
|
||||||
--- a/mail/installer/package-manifest.in
|
|
||||||
+++ b/mail/installer/package-manifest.in
|
|
||||||
@@ -313,16 +313,17 @@
|
|
||||||
@RESPATH@/components/devtools-startup.manifest
|
|
||||||
@RESPATH@/components/devtools-startup.js
|
|
||||||
|
|
||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
||||||
; Default Profile Settings
|
|
||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
||||||
|
|
||||||
; default pref files
|
|
||||||
+@RESPATH@/defaults/pref/all-gentoo.js
|
|
||||||
@RESPATH@/defaults/pref/all-thunderbird.js
|
|
||||||
@RESPATH@/defaults/pref/channel-prefs.js
|
|
||||||
@RESPATH@/defaults/pref/composer.js
|
|
||||||
@RESPATH@/defaults/pref/mailnews.js
|
|
||||||
@RESPATH@/defaults/pref/mdn.js
|
|
||||||
@RESPATH@/defaults/pref/smime.js
|
|
||||||
@RESPATH@/defaults/pref/thunderbird-branding.js
|
|
||||||
@RESPATH@/greprefs.js
|
|
||||||
@ -1,11 +0,0 @@
|
|||||||
diff -ruN a/mail/installer/package-manifest.in b/mail/installer/package-manifest.in
|
|
||||||
--- a/mail/installer/package-manifest.in 2020-08-21 14:39:34.000000000 +0200
|
|
||||||
+++ b/mail/installer/package-manifest.in 2020-08-27 20:35:35.308786093 +0200
|
|
||||||
@@ -270,6 +270,7 @@
|
|
||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
||||||
|
|
||||||
; default pref files
|
|
||||||
+@RESPATH@/defaults/pref/all-gentoo.js
|
|
||||||
@RESPATH@/defaults/pref/all-thunderbird.js
|
|
||||||
@RESPATH@/defaults/pref/channel-prefs.js
|
|
||||||
@RESPATH@/defaults/pref/composer.js
|
|
||||||
@ -1,24 +0,0 @@
|
|||||||
From: Mike Hommey <glandium@debian.org>
|
|
||||||
Date: Sat, 27 Sep 2008 17:17:39 +0200
|
|
||||||
Subject: Don't register plugins if the MOZILLA_DISABLE_PLUGINS environment
|
|
||||||
variable is set
|
|
||||||
|
|
||||||
---
|
|
||||||
dom/plugins/base/nsPluginHost.cpp | 4 ++++
|
|
||||||
1 file changed, 4 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/dom/plugins/base/nsPluginHost.cpp b/dom/plugins/base/nsPluginHost.cpp
|
|
||||||
index ad37e00..e5833d7 100644
|
|
||||||
--- a/dom/plugins/base/nsPluginHost.cpp
|
|
||||||
+++ b/dom/plugins/base/nsPluginHost.cpp
|
|
||||||
@@ -290,6 +290,10 @@ nsPluginHost::nsPluginHost()
|
|
||||||
Preferences::AddStrongObserver(this, "plugin.disable");
|
|
||||||
}
|
|
||||||
|
|
||||||
+ const char *env = PR_GetEnv("MOZILLA_DISABLE_PLUGINS");
|
|
||||||
+ if (env && env[0])
|
|
||||||
+ mPluginsDisabled = PR_TRUE;
|
|
||||||
+
|
|
||||||
nsCOMPtr<nsIObserverService> obsService =
|
|
||||||
mozilla::services::GetObserverService();
|
|
||||||
if (obsService) {
|
|
||||||
@ -1,21 +0,0 @@
|
|||||||
From: Mike Hommey <mh@glandium.org>
|
|
||||||
Date: Sun, 5 Feb 2017 08:41:22 +0900
|
|
||||||
Subject: Set program name from the remoting name
|
|
||||||
|
|
||||||
---
|
|
||||||
toolkit/xre/nsAppRunner.cpp | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/toolkit/xre/nsAppRunner.cpp b/toolkit/xre/nsAppRunner.cpp
|
|
||||||
index ef72d1b..4affb82 100644
|
|
||||||
--- a/toolkit/xre/nsAppRunner.cpp
|
|
||||||
+++ b/toolkit/xre/nsAppRunner.cpp
|
|
||||||
@@ -3750,7 +3750,7 @@ int XREMain::XRE_mainStartup(bool* aExitFlag) {
|
|
||||||
|
|
||||||
// Set program name to the one defined in application.ini.
|
|
||||||
{
|
|
||||||
- nsAutoCString program(gAppData->name);
|
|
||||||
+ nsAutoCString program(gAppData->remotingName);
|
|
||||||
ToLowerCase(program);
|
|
||||||
g_set_prgname(program.get());
|
|
||||||
}
|
|
||||||
@ -1,34 +0,0 @@
|
|||||||
From: Mike Hommey <mh@glandium.org>
|
|
||||||
Date: Mon, 3 Sep 2018 07:37:40 +0900
|
|
||||||
Subject: Use remoting name for call to gdk_set_program_class
|
|
||||||
|
|
||||||
Closes: #907574
|
|
||||||
---
|
|
||||||
widget/gtk/nsAppShell.cpp | 7 +++----
|
|
||||||
1 file changed, 3 insertions(+), 4 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/widget/gtk/nsAppShell.cpp b/widget/gtk/nsAppShell.cpp
|
|
||||||
index a424664..1126bf9 100644
|
|
||||||
--- a/widget/gtk/nsAppShell.cpp
|
|
||||||
+++ b/widget/gtk/nsAppShell.cpp
|
|
||||||
@@ -24,6 +24,7 @@
|
|
||||||
# include "WakeLockListener.h"
|
|
||||||
#endif
|
|
||||||
#include "gfxPlatform.h"
|
|
||||||
+#include "nsAppRunner.h"
|
|
||||||
#include "ScreenHelperGTK.h"
|
|
||||||
#include "HeadlessScreenHelper.h"
|
|
||||||
#include "mozilla/widget/ScreenManager.h"
|
|
||||||
@@ -178,10 +179,8 @@ nsresult nsAppShell::Init() {
|
|
||||||
// creating top-level windows. (At this point, a child process hasn't
|
|
||||||
// received the list of registered chrome packages, so the
|
|
||||||
// GetBrandShortName call would fail anyway.)
|
|
||||||
- nsAutoString brandName;
|
|
||||||
- mozilla::widget::WidgetUtils::GetBrandShortName(brandName);
|
|
||||||
- if (!brandName.IsEmpty()) {
|
|
||||||
- gdk_set_program_class(NS_ConvertUTF16toUTF8(brandName).get());
|
|
||||||
+ if (gAppData) {
|
|
||||||
+ gdk_set_program_class(gAppData->remotingName);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,77 +0,0 @@
|
|||||||
From: Mike Hommey <glandium@debian.org>
|
|
||||||
Date: Sat, 21 Jun 2008 02:48:46 +0200
|
|
||||||
Subject: Allow .js preference files to set locked prefs with lockPref()
|
|
||||||
|
|
||||||
---
|
|
||||||
modules/libpref/parser/src/lib.rs | 23 ++++++++++++-----------
|
|
||||||
1 file changed, 12 insertions(+), 11 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/modules/libpref/parser/src/lib.rs b/modules/libpref/parser/src/lib.rs
|
|
||||||
index a8c5b6b..aceacf3 100644
|
|
||||||
--- a/modules/libpref/parser/src/lib.rs
|
|
||||||
+++ b/modules/libpref/parser/src/lib.rs
|
|
||||||
@@ -10,7 +10,7 @@
|
|
||||||
//!
|
|
||||||
//! <pref-file> = <pref>*
|
|
||||||
//! <pref> = <pref-spec> "(" <pref-name> "," <pref-value> <pref-attrs> ")" ";"
|
|
||||||
-//! <pref-spec> = "user_pref" | "pref" | "sticky_pref" // in default pref files
|
|
||||||
+//! <pref-spec> = "user_pref" | "pref" | "sticky_pref | lockPref" // in default pref files
|
|
||||||
//! <pref-spec> = "user_pref" // in user pref files
|
|
||||||
//! <pref-name> = <string-literal>
|
|
||||||
//! <pref-value> = <string-literal> | "true" | "false" | <int-value>
|
|
||||||
@@ -169,6 +169,7 @@ enum Token {
|
|
||||||
// Keywords
|
|
||||||
Pref, // pref
|
|
||||||
StickyPref, // sticky_pref
|
|
||||||
+ LockPref, // lockPref
|
|
||||||
UserPref, // user_pref
|
|
||||||
True, // true
|
|
||||||
False, // false
|
|
||||||
@@ -291,7 +292,7 @@ struct KeywordInfo {
|
|
||||||
token: Token,
|
|
||||||
}
|
|
||||||
|
|
||||||
-const KEYWORD_INFOS: [KeywordInfo; 7] = [
|
|
||||||
+const KEYWORD_INFOS: [KeywordInfo; 8] = [
|
|
||||||
// These are ordered by frequency.
|
|
||||||
KeywordInfo {
|
|
||||||
string: b"pref",
|
|
||||||
@@ -321,6 +322,10 @@ const KEYWORD_INFOS: [KeywordInfo; 7] = [
|
|
||||||
string: b"sticky_pref",
|
|
||||||
token: Token::StickyPref,
|
|
||||||
},
|
|
||||||
+ KeywordInfo {
|
|
||||||
+ string: b"lock_pref",
|
|
||||||
+ token: Token::LockPref,
|
|
||||||
+ },
|
|
||||||
];
|
|
||||||
|
|
||||||
struct Parser<'t> {
|
|
||||||
@@ -373,14 +378,11 @@ impl<'t> Parser<'t> {
|
|
||||||
// this will be either the first token of a new pref, or EOF.
|
|
||||||
loop {
|
|
||||||
// <pref-spec>
|
|
||||||
- let (pref_value_kind, mut is_sticky) = match token {
|
|
||||||
- Token::Pref if self.kind == PrefValueKind::Default => {
|
|
||||||
- (PrefValueKind::Default, false)
|
|
||||||
- }
|
|
||||||
- Token::StickyPref if self.kind == PrefValueKind::Default => {
|
|
||||||
- (PrefValueKind::Default, true)
|
|
||||||
- }
|
|
||||||
- Token::UserPref => (PrefValueKind::User, false),
|
|
||||||
+ let (pref_value_kind, mut is_sticky, mut is_locked) = match token {
|
|
||||||
+ Token::Pref => (PrefValueKind::Default, false, false),
|
|
||||||
+ Token::StickyPref => (PrefValueKind::Default, true, false),
|
|
||||||
+ Token::LockPref => (PrefValueKind::Default, false, true),
|
|
||||||
+ Token::UserPref => (PrefValueKind::User, false, false),
|
|
||||||
Token::SingleChar(EOF) => return !self.has_errors,
|
|
||||||
_ => {
|
|
||||||
token = self.error_and_recover(
|
|
||||||
@@ -490,7 +492,6 @@ impl<'t> Parser<'t> {
|
|
||||||
};
|
|
||||||
|
|
||||||
// ("," <pref-attr>)* // default pref files only
|
|
||||||
- let mut is_locked = false;
|
|
||||||
let mut has_attrs = false;
|
|
||||||
if self.kind == PrefValueKind::Default {
|
|
||||||
let ok = loop {
|
|
||||||
@ -1,22 +0,0 @@
|
|||||||
From: Christoph Goehre <chris@sigxcpu.org>
|
|
||||||
Date: Mon, 16 Sep 2013 20:40:57 +0200
|
|
||||||
Subject: Load-dependent-libraries-with-their-real-path-to-avo
|
|
||||||
|
|
||||||
---
|
|
||||||
xpcom/glue/standalone/nsXPCOMGlue.cpp | 3 +++
|
|
||||||
1 file changed, 3 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/xpcom/glue/standalone/nsXPCOMGlue.cpp b/xpcom/glue/standalone/nsXPCOMGlue.cpp
|
|
||||||
index cf8e265..d1c5a85 100644
|
|
||||||
--- a/xpcom/glue/standalone/nsXPCOMGlue.cpp
|
|
||||||
+++ b/xpcom/glue/standalone/nsXPCOMGlue.cpp
|
|
||||||
@@ -132,6 +132,9 @@ static bool ReadDependentCB(pathstr_t aDependentLib,
|
|
||||||
ReadAheadLib(aDependentLib);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
+ char lib[MAXPATHLEN];
|
|
||||||
+ if (realpath(aDependentLib, lib))
|
|
||||||
+ aDependentLib = lib;
|
|
||||||
LibHandleType libHandle = GetLibHandle(aDependentLib);
|
|
||||||
if (libHandle) {
|
|
||||||
AppendDependentLib(libHandle);
|
|
||||||
@ -1,24 +0,0 @@
|
|||||||
From: Mike Hommey <glandium@debian.org>
|
|
||||||
Date: Sat, 22 Nov 2008 09:35:23 +0100
|
|
||||||
Subject: Properly launch applications set in $HOME/.mailcap
|
|
||||||
|
|
||||||
https://bugzilla.mozilla.org/show_bug.cgi?id=444440
|
|
||||||
---
|
|
||||||
uriloader/exthandler/unix/nsMIMEInfoUnix.cpp | 4 ++++
|
|
||||||
1 file changed, 4 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp b/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp
|
|
||||||
index 7cbefcc..c4bafef 100644
|
|
||||||
--- a/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp
|
|
||||||
+++ b/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp
|
|
||||||
@@ -53,6 +53,10 @@ nsresult nsMIMEInfoUnix::LaunchDefaultWithFile(nsIFile* aFile) {
|
|
||||||
if (mDefaultApplication) return nsMIMEInfoImpl::LaunchDefaultWithFile(aFile);
|
|
||||||
|
|
||||||
nsAutoCString nativePath;
|
|
||||||
+/* the name of the function has changed
|
|
||||||
+ * the old was the following:
|
|
||||||
+ nsCAutoString nativePath;
|
|
||||||
+ */
|
|
||||||
aFile->GetNativePath(nativePath);
|
|
||||||
|
|
||||||
nsCOMPtr<nsIGIOService> giovfs = do_GetService(NS_GIOSERVICE_CONTRACTID);
|
|
||||||
@ -1,22 +0,0 @@
|
|||||||
From: Carsten Schoenert <c.schoenert@t-online.de>
|
|
||||||
Date: Sat, 9 Mar 2013 20:30:54 +0100
|
|
||||||
Subject: fix function nsMsgComposeAndSend to respect ReploToSend
|
|
||||||
|
|
||||||
https://bugzilla.mozilla.org/show_bug.cgi?id=522450
|
|
||||||
Closes: #565903
|
|
||||||
---
|
|
||||||
comm/mailnews/compose/src/nsMsgSend.cpp | 1 +
|
|
||||||
1 file changed, 1 insertion(+)
|
|
||||||
|
|
||||||
diff --git a/comm/mailnews/compose/src/nsMsgSend.cpp b/comm/mailnews/compose/src/nsMsgSend.cpp
|
|
||||||
index a1e1b40..b0525a3 100644
|
|
||||||
--- a/comm/mailnews/compose/src/nsMsgSend.cpp
|
|
||||||
+++ b/comm/mailnews/compose/src/nsMsgSend.cpp
|
|
||||||
@@ -2326,6 +2326,7 @@ nsresult nsMsgComposeAndSend::InitCompositionFields(
|
|
||||||
(aType == nsIMsgCompType::Reply ||
|
|
||||||
aType == nsIMsgCompType::ReplyAll ||
|
|
||||||
aType == nsIMsgCompType::ReplyToGroup ||
|
|
||||||
+ aType == nsIMsgCompType::ReplyToList ||
|
|
||||||
aType == nsIMsgCompType::ReplyToSender ||
|
|
||||||
aType == nsIMsgCompType::ReplyToSenderAndGroup ||
|
|
||||||
aType == nsIMsgCompType::ReplyWithTemplate)) {
|
|
||||||
@ -1,21 +0,0 @@
|
|||||||
From: Christoph Goehre <chris@sigxcpu.org>
|
|
||||||
Date: Sat, 24 Mar 2012 11:54:43 +0100
|
|
||||||
Subject: Don't auto-disable extensions in system directories
|
|
||||||
|
|
||||||
---
|
|
||||||
comm/mail/app/profile/all-thunderbird.js | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/comm/mail/app/profile/all-thunderbird.js b/comm/mail/app/profile/all-thunderbird.js
|
|
||||||
index 960700b..3467648 100644
|
|
||||||
--- a/comm/mail/app/profile/all-thunderbird.js
|
|
||||||
+++ b/comm/mail/app/profile/all-thunderbird.js
|
|
||||||
@@ -137,7 +137,7 @@ pref("extensions.hotfix.certs.2.sha1Fingerprint", "39:E7:2B:7A:5B:CF:37:78:F9:5D
|
|
||||||
// Disable add-ons installed into the shared user and shared system areas by
|
|
||||||
// default. This does not include the application directory. See the SCOPE
|
|
||||||
// constants in AddonManager.jsm for values to use here
|
|
||||||
-pref("extensions.autoDisableScopes", 15);
|
|
||||||
+pref("extensions.autoDisableScopes", 3);
|
|
||||||
|
|
||||||
// Enable add-ons installed and owned by the application, like the default theme.
|
|
||||||
pref("extensions.startupScanScopes", 4);
|
|
||||||
@ -1,33 +0,0 @@
|
|||||||
From: Mike Hommey <glandium@debian.org>
|
|
||||||
Date: Sat, 8 Dec 2007 19:24:40 +0100
|
|
||||||
Subject: Set javascript.options.showInConsole
|
|
||||||
|
|
||||||
---
|
|
||||||
modules/libpref/init/all.js | 9 +++++++++
|
|
||||||
1 file changed, 9 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/modules/libpref/init/all.js b/modules/libpref/init/all.js
|
|
||||||
index aa373d1..a211fe5 100644
|
|
||||||
--- a/modules/libpref/init/all.js
|
|
||||||
+++ b/modules/libpref/init/all.js
|
|
||||||
@@ -1148,11 +1148,20 @@ pref("javascript.options.ion.offthread_compilation", true);
|
|
||||||
// memory, but makes things like Function.prototype.toSource()
|
|
||||||
// fail.
|
|
||||||
pref("javascript.options.discardSystemSource", false);
|
|
||||||
+pref("javascript.options.showInConsole", true);
|
|
||||||
|
|
||||||
// Many of the the following preferences tune the SpiderMonkey GC, if you
|
|
||||||
// change the defaults here please also consider changing them in
|
|
||||||
// js/src/jsgc.cpp. They're documented in js/src/jsapi.h.
|
|
||||||
|
|
||||||
+// JSGC_MAX_MALLOC_BYTES
|
|
||||||
+// How much malloc memory can be allocated before triggering a GC, in MB.
|
|
||||||
+// This preference limits the memory usage of javascript.
|
|
||||||
+// If you want to change these values for your device,
|
|
||||||
+// please find Bug 417052 comment 17 and Bug 456721
|
|
||||||
+// Comment 32 and Bug 613551.
|
|
||||||
+pref("javascript.options.mem.high_water_mark", 128);
|
|
||||||
+
|
|
||||||
// JSGC_MAX_BYTES
|
|
||||||
// SpiderMonkey defaults to 2^32-1 bytes, but this is measured in MB so that
|
|
||||||
// cannot be represented directly in order to show it in about:config.
|
|
||||||
@ -1,9 +0,0 @@
|
|||||||
fixes/Properly-launch-applications-set-in-HOME-.mailcap.patch
|
|
||||||
debian-hacks/Don-t-register-plugins-if-the-MOZILLA_DISABLE_PLUGIN.patch
|
|
||||||
fixes/Load-dependent-libraries-with-their-real-path-to-avo.patch
|
|
||||||
prefs/Set-javascript.options.showInConsole.patch
|
|
||||||
prefs/Don-t-auto-disable-extensions-in-system-directories.patch
|
|
||||||
fixes/fix-function-nsMsgComposeAndSend-to-respect-Replo.patch
|
|
||||||
fixes/Allow-.js-preference-files-to-set-locked-prefs-with-lockP.patch
|
|
||||||
debian-hacks/Set-program-name-from-the-remoting-name.patch
|
|
||||||
debian-hacks/Use-remoting-name-for-call-to-gdk_set_program_class.patch
|
|
||||||
@ -1,5 +0,0 @@
|
|||||||
{
|
|
||||||
"policies": {
|
|
||||||
"DisableAppUpdate": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,12 +0,0 @@
|
|||||||
diff -up thunderbird-60.5.0/mfbt/LinuxSignal.h.mozilla-1238661 thunderbird-60.5.0/mfbt/LinuxSignal.h
|
|
||||||
--- thunderbird-60.5.0/mfbt/LinuxSignal.h.mozilla-1238661 2019-01-30 11:33:21.447003175 +0100
|
|
||||||
+++ thunderbird-60.5.0/mfbt/LinuxSignal.h 2019-01-30 11:35:13.848537051 +0100
|
|
||||||
@@ -22,7 +22,7 @@ __attribute__((naked)) void SignalTrampo
|
|
||||||
void* aContext) {
|
|
||||||
asm volatile("nop; nop; nop; nop" : : : "memory");
|
|
||||||
|
|
||||||
- asm volatile("b %0" : : "X"(H) : "memory");
|
|
||||||
+ asm volatile("bx %0" : : "r"(H), "l"(aSignal), "l"(aInfo), "l"(aContext) : "memory");
|
|
||||||
}
|
|
||||||
|
|
||||||
#define MOZ_SIGNAL_TRAMPOLINE(h) (mozilla::SignalTrampoline<h>)
|
|
||||||
@ -1,12 +0,0 @@
|
|||||||
diff -up thunderbird-68.0/toolkit/moz.configure.elfhack thunderbird-68.0/toolkit/moz.configure
|
|
||||||
--- thunderbird-68.0/toolkit/moz.configure.elfhack 2019-08-29 16:33:28.491708653 +0200
|
|
||||||
+++ thunderbird-68.0/toolkit/moz.configure 2019-08-29 16:33:58.019805525 +0200
|
|
||||||
@@ -1130,7 +1130,7 @@ with only_when('--enable-compile-environ
|
|
||||||
help='{Enable|Disable} elf hacks')
|
|
||||||
|
|
||||||
set_config('USE_ELF_HACK',
|
|
||||||
- depends_if('--enable-elf-hack')(lambda _: True))
|
|
||||||
+ depends_if('--enable-elf-hack')(lambda _: False))
|
|
||||||
|
|
||||||
|
|
||||||
@depends(check_build_environment)
|
|
||||||
@ -1,16 +0,0 @@
|
|||||||
diff -up firefox-68.0/media/libyuv/libyuv/tools_libyuv/autoroller/unittests/testdata/DEPS.chromium.old firefox-68.0/media/libyuv/libyuv/tools_libyuv/autoroller/unittests/testdata/DEPS.chromium
|
|
||||||
diff -up firefox-68.0/media/webrtc/trunk/Makefile.old firefox-68.0/media/webrtc/trunk/Makefile
|
|
||||||
diff -up firefox-68.0/media/webrtc/trunk/webrtc/rtc_base/physicalsocketserver.cc.old firefox-68.0/media/webrtc/trunk/webrtc/rtc_base/physicalsocketserver.cc
|
|
||||||
--- firefox-68.0/media/webrtc/trunk/webrtc/rtc_base/physicalsocketserver.cc.old 2019-07-10 20:10:04.420328534 +0200
|
|
||||||
+++ firefox-68.0/media/webrtc/trunk/webrtc/rtc_base/physicalsocketserver.cc 2019-07-10 20:13:48.766658793 +0200
|
|
||||||
@@ -62,6 +62,10 @@ typedef void* SockOptArg;
|
|
||||||
|
|
||||||
#if defined(WEBRTC_POSIX) && !defined(WEBRTC_MAC) && !defined(WEBRTC_BSD) && !defined(__native_client__)
|
|
||||||
|
|
||||||
+#ifndef SIOCGSTAMP
|
|
||||||
+#define SIOCGSTAMP 0x8906 /* Get stamp (timeval) */
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
int64_t GetSocketRecvTimestamp(int socket) {
|
|
||||||
struct timeval tv_ioctl;
|
|
||||||
int ret = ioctl(socket, SIOCGSTAMP, &tv_ioctl);
|
|
||||||
@ -1,17 +0,0 @@
|
|||||||
# Remove when mozbz#1269319 lands
|
|
||||||
|
|
||||||
--- firefox-45.0.1-orig/js/src/Makefile.in 2016-05-17 14:53:58.753178403 +0200
|
|
||||||
+++ firefox-45.0.1/js/src/Makefile.in 2016-05-17 14:53:28.432817862 +0200
|
|
||||||
@@ -144,6 +144,11 @@ distclean::
|
|
||||||
|
|
||||||
CFLAGS += $(MOZ_ZLIB_CFLAGS)
|
|
||||||
|
|
||||||
+# Avoid GNU gcc bug #70526
|
|
||||||
+# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70526#c14
|
|
||||||
+CFLAGS += -fno-schedule-insns2
|
|
||||||
+CXXFLAGS += -fno-schedule-insns2
|
|
||||||
+
|
|
||||||
# Silence warnings on AIX/HP-UX from non-GNU compilers
|
|
||||||
ifndef GNU_CC
|
|
||||||
ifeq ($(OS_ARCH),AIX)
|
|
||||||
|
|
||||||
@ -1,12 +0,0 @@
|
|||||||
diff -up thunderbird-68.0/gfx/skia/skia/include/private/SkNx.h.1353817 thunderbird-68.0/gfx/skia/skia/include/private/SkNx.h
|
|
||||||
--- thunderbird-68.0/gfx/skia/skia/include/private/SkNx.h.1353817 2019-08-29 16:31:20.892290062 +0200
|
|
||||||
+++ thunderbird-68.0/gfx/skia/skia/include/private/SkNx.h 2019-08-29 16:32:05.430436157 +0200
|
|
||||||
@@ -416,7 +416,7 @@ typedef SkNx<8, uint32_t> Sk8u;
|
|
||||||
// Include platform specific specializations if available.
|
|
||||||
#if !defined(SKNX_NO_SIMD) && SK_CPU_SSE_LEVEL >= SK_CPU_SSE_LEVEL_SSE2
|
|
||||||
#include "SkNx_sse.h"
|
|
||||||
-#elif !defined(SKNX_NO_SIMD) && defined(SK_ARM_HAS_NEON)
|
|
||||||
+#elif !defined(SKNX_NO_SIMD) && (defined(SK_ARM_HAS_NEON) || defined(SK_CPU_ARM64))
|
|
||||||
#include "SkNx_neon.h"
|
|
||||||
#else
|
|
||||||
|
|
||||||
@ -1,21 +0,0 @@
|
|||||||
diff -up thunderbird-68.1.0/js/xpconnect/src/XPCWrappedNative.cpp.mozbz-1512162 thunderbird-68.1.0/js/xpconnect/src/XPCWrappedNative.cpp
|
|
||||||
--- thunderbird-68.1.0/js/xpconnect/src/XPCWrappedNative.cpp.mozbz-1512162 2019-09-10 01:43:33.000000000 +0200
|
|
||||||
+++ thunderbird-68.1.0/js/xpconnect/src/XPCWrappedNative.cpp 2019-09-12 16:16:52.644123766 +0200
|
|
||||||
@@ -1092,7 +1092,7 @@ class MOZ_STACK_CLASS CallMethodHelper f
|
|
||||||
MOZ_ALWAYS_INLINE bool GetOutParamSource(uint8_t paramIndex,
|
|
||||||
MutableHandleValue srcp) const;
|
|
||||||
|
|
||||||
- MOZ_ALWAYS_INLINE bool GatherAndConvertResults();
|
|
||||||
+ bool GatherAndConvertResults();
|
|
||||||
|
|
||||||
MOZ_ALWAYS_INLINE bool QueryInterfaceFastPath();
|
|
||||||
|
|
||||||
@@ -1139,7 +1139,7 @@ class MOZ_STACK_CLASS CallMethodHelper f
|
|
||||||
|
|
||||||
~CallMethodHelper();
|
|
||||||
|
|
||||||
- MOZ_ALWAYS_INLINE bool Call();
|
|
||||||
+ bool Call();
|
|
||||||
|
|
||||||
// Trace implementation so we can put our CallMethodHelper in a Rooted<T>.
|
|
||||||
void trace(JSTracer* aTrc);
|
|
||||||
@ -1,17 +0,0 @@
|
|||||||
diff --git a/widget/gtk/nsClipboardWayland.cpp b/widget/gtk/nsClipboardWayland.cpp
|
|
||||||
--- a/widget/gtk/nsClipboardWayland.cpp
|
|
||||||
+++ b/widget/gtk/nsClipboardWayland.cpp
|
|
||||||
@@ -195,6 +195,12 @@
|
|
||||||
uint32_t all_actions = WL_DATA_DEVICE_MANAGER_DND_ACTION_COPY |
|
|
||||||
WL_DATA_DEVICE_MANAGER_DND_ACTION_MOVE;
|
|
||||||
|
|
||||||
+ /* Default to move D&D action (Bug 1576268).
|
|
||||||
+ */
|
|
||||||
+ if (dnd_actions == 0) {
|
|
||||||
+ all_actions = WL_DATA_DEVICE_MANAGER_DND_ACTION_MOVE;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
wl_data_offer_set_actions(mWaylandDataOffer, all_actions, dnd_actions);
|
|
||||||
|
|
||||||
/* Workaround Wayland D&D architecture here. To get the data_device_drop()
|
|
||||||
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
diff -up firefox-60.6.0/widget/gtk/nsFilePicker.cpp.old firefox-60.6.0/widget/gtk/nsFilePicker.cpp
|
|
||||||
--- firefox-60.6.0/widget/gtk/nsFilePicker.cpp.old 2019-03-27 10:29:47.918560620 +0100
|
|
||||||
+++ firefox-60.6.0/widget/gtk/nsFilePicker.cpp 2019-03-27 10:30:08.384491717 +0100
|
|
||||||
@@ -366,9 +366,7 @@ nsFilePicker::Open(nsIFilePickerShownCal
|
|
||||||
// If we have --enable-proxy-bypass-protection, then don't allow
|
|
||||||
// remote URLs to be used.
|
|
||||||
#ifndef MOZ_PROXY_BYPASS_PROTECTION
|
|
||||||
- if (mAllowURLs) {
|
|
||||||
- gtk_file_chooser_set_local_only(GTK_FILE_CHOOSER(file_chooser), FALSE);
|
|
||||||
- }
|
|
||||||
+ gtk_file_chooser_set_local_only(GTK_FILE_CHOOSER(file_chooser), FALSE);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (action == GTK_FILE_CHOOSER_ACTION_OPEN ||
|
|
||||||
@ -1,11 +0,0 @@
|
|||||||
Bug-1238661---fix-mozillaSignalTrampoline-to-work-.patch
|
|
||||||
firefox-SIOCGSTAMP.patch
|
|
||||||
mozilla-1512162.patch
|
|
||||||
thunderbird-debug.patch
|
|
||||||
|
|
||||||
mozilla-1245783.patch
|
|
||||||
mozilla-1353817.patch
|
|
||||||
build-disable-elfhack.patch
|
|
||||||
|
|
||||||
mozilla-526293.patch
|
|
||||||
mozilla-1576268.patch
|
|
||||||
@ -1,12 +0,0 @@
|
|||||||
diff -up thunderbird-60.6.1/intl/locale/LocaleService.cpp.debug thunderbird-60.6.1/intl/locale/LocaleService.cpp
|
|
||||||
--- thunderbird-60.6.1/intl/locale/LocaleService.cpp.debug 2019-05-15 08:15:14.602872505 +0200
|
|
||||||
+++ thunderbird-60.6.1/intl/locale/LocaleService.cpp 2019-05-15 08:15:53.717635322 +0200
|
|
||||||
@@ -643,8 +643,6 @@ LocaleService::GetDefaultLocale(nsACStri
|
|
||||||
// just use our hard-coded default below.
|
|
||||||
GetGREFileContents("update.locale", &locale);
|
|
||||||
locale.Trim(" \t\n\r");
|
|
||||||
- // This should never be empty.
|
|
||||||
- MOZ_ASSERT(!locale.IsEmpty());
|
|
||||||
if (SanitizeForBCP47(locale, true)) {
|
|
||||||
mDefaultLocale.Assign(locale);
|
|
||||||
}
|
|
||||||
@ -1,15 +0,0 @@
|
|||||||
diff -up firefox-68.0/mfbt/LinuxSignal.h.1238661 firefox-68.0/mfbt/LinuxSignal.h
|
|
||||||
--- firefox-68.0/mfbt/LinuxSignal.h.1238661 2019-07-08 22:27:29.620749569 +0200
|
|
||||||
+++ firefox-68.0/mfbt/LinuxSignal.h 2019-07-08 22:44:17.794112428 +0200
|
|
||||||
@@ -22,7 +22,10 @@ __attribute__((naked)) void SignalTrampo
|
|
||||||
void* aContext) {
|
|
||||||
asm volatile("nop; nop; nop; nop" : : : "memory");
|
|
||||||
|
|
||||||
- asm volatile("b %0" : : "X"(H) : "memory");
|
|
||||||
+ // Because the assembler may generate additional insturctions below, we
|
|
||||||
+ // need to ensure NOPs are inserted first by separating them out above.
|
|
||||||
+
|
|
||||||
+ asm volatile("bx %0" : : "r"(H), "l"(aSignal), "l"(aInfo), "l"(aContext) : "memory");
|
|
||||||
}
|
|
||||||
|
|
||||||
# define MOZ_SIGNAL_TRAMPOLINE(h) (mozilla::SignalTrampoline<h>)
|
|
||||||
@ -1,12 +0,0 @@
|
|||||||
diff -up firefox-65.0/toolkit/moz.configure.disable-elfhack firefox-65.0/toolkit/moz.configure
|
|
||||||
--- firefox-65.0/toolkit/moz.configure.disable-elfhack 2019-01-28 14:16:48.530345132 +0100
|
|
||||||
+++ firefox-65.0/toolkit/moz.configure 2019-01-28 14:18:03.231029682 +0100
|
|
||||||
@@ -1036,7 +1036,7 @@ with only_when('--enable-compile-environ
|
|
||||||
help='{Enable|Disable} elf hacks')
|
|
||||||
|
|
||||||
set_config('USE_ELF_HACK',
|
|
||||||
- depends_if('--enable-elf-hack')(lambda _: True))
|
|
||||||
+ depends_if('--enable-elf-hack')(lambda _: False))
|
|
||||||
|
|
||||||
|
|
||||||
@depends(check_build_environment)
|
|
||||||
@ -1,99 +0,0 @@
|
|||||||
diff -up firefox-75.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 firefox-75.0/extensions/pref/autoconfig/src/nsReadConfig.cpp
|
|
||||||
--- firefox-75.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 2020-04-03 21:34:41.000000000 +0200
|
|
||||||
+++ firefox-75.0/extensions/pref/autoconfig/src/nsReadConfig.cpp 2020-04-06 22:40:02.760674871 +0200
|
|
||||||
@@ -244,8 +244,20 @@ nsresult nsReadConfig::openAndEvaluateJS
|
|
||||||
if (NS_FAILED(rv)) return rv;
|
|
||||||
|
|
||||||
rv = NS_NewLocalFileInputStream(getter_AddRefs(inStr), jsFile);
|
|
||||||
- if (NS_FAILED(rv)) return rv;
|
|
||||||
+ if (NS_FAILED(rv)) {
|
|
||||||
+ // Look for cfg file in /etc/<application>/pref
|
|
||||||
+ rv = NS_GetSpecialDirectory(NS_APP_PREFS_SYSTEM_CONFIG_DIR,
|
|
||||||
+ getter_AddRefs(jsFile));
|
|
||||||
+ NS_ENSURE_SUCCESS(rv, rv);
|
|
||||||
+
|
|
||||||
+ rv = jsFile->AppendNative(NS_LITERAL_CSTRING("pref"));
|
|
||||||
+ NS_ENSURE_SUCCESS(rv, rv);
|
|
||||||
+ rv = jsFile->AppendNative(nsDependentCString(aFileName));
|
|
||||||
+ NS_ENSURE_SUCCESS(rv, rv);
|
|
||||||
|
|
||||||
+ rv = NS_NewLocalFileInputStream(getter_AddRefs(inStr), jsFile);
|
|
||||||
+ NS_ENSURE_SUCCESS(rv, rv);
|
|
||||||
+ }
|
|
||||||
} else {
|
|
||||||
nsAutoCString location("resource://gre/defaults/autoconfig/");
|
|
||||||
location += aFileName;
|
|
||||||
diff -up firefox-75.0/modules/libpref/Preferences.cpp.1170092 firefox-75.0/modules/libpref/Preferences.cpp
|
|
||||||
--- firefox-75.0/modules/libpref/Preferences.cpp.1170092 2020-04-06 22:40:02.761674865 +0200
|
|
||||||
+++ firefox-75.0/modules/libpref/Preferences.cpp 2020-04-06 22:40:57.675325227 +0200
|
|
||||||
@@ -4468,6 +4468,9 @@ nsresult Preferences::InitInitialObjects
|
|
||||||
//
|
|
||||||
// Thus, in the omni.jar case, we always load app-specific default
|
|
||||||
// preferences from omni.jar, whether or not `$app == $gre`.
|
|
||||||
+ //
|
|
||||||
+ // At very end load configuration from system config location:
|
|
||||||
+ // - /etc/firefox/pref/*.js
|
|
||||||
|
|
||||||
nsresult rv = NS_ERROR_FAILURE;
|
|
||||||
UniquePtr<nsZipFind> find;
|
|
||||||
diff -up firefox-75.0/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-75.0/toolkit/xre/nsXREDirProvider.cpp
|
|
||||||
--- firefox-75.0/toolkit/xre/nsXREDirProvider.cpp.1170092 2020-04-03 21:35:39.000000000 +0200
|
|
||||||
+++ firefox-75.0/toolkit/xre/nsXREDirProvider.cpp 2020-04-06 22:40:02.761674865 +0200
|
|
||||||
@@ -60,6 +60,7 @@
|
|
||||||
#endif
|
|
||||||
#ifdef XP_UNIX
|
|
||||||
# include <ctype.h>
|
|
||||||
+# include "nsIXULAppInfo.h"
|
|
||||||
#endif
|
|
||||||
#ifdef XP_IOS
|
|
||||||
# include "UIKitDirProvider.h"
|
|
||||||
@@ -533,6 +534,21 @@ nsXREDirProvider::GetFile(const char* aP
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
+
|
|
||||||
+#if defined(XP_UNIX)
|
|
||||||
+ if (!strcmp(aProperty, NS_APP_PREFS_SYSTEM_CONFIG_DIR)) {
|
|
||||||
+ nsCString sysConfigDir = NS_LITERAL_CSTRING("/etc/");
|
|
||||||
+ nsCOMPtr<nsIXULAppInfo> appInfo = do_GetService("@mozilla.org/xre/app-info;1");
|
|
||||||
+ if (!appInfo)
|
|
||||||
+ return NS_ERROR_NOT_AVAILABLE;
|
|
||||||
+ nsCString appName;
|
|
||||||
+ appInfo->GetName(appName);
|
|
||||||
+ ToLowerCase(appName);
|
|
||||||
+ sysConfigDir.Append(appName);
|
|
||||||
+ return NS_NewNativeLocalFile(sysConfigDir, false, aFile);
|
|
||||||
+ }
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
if (NS_FAILED(rv) || !file) return NS_ERROR_FAILURE;
|
|
||||||
|
|
||||||
if (ensureFilePermissions) {
|
|
||||||
@@ -845,6 +861,16 @@ nsresult nsXREDirProvider::GetFilesInter
|
|
||||||
|
|
||||||
LoadDirIntoArray(mXULAppDir, kAppendPrefDir, directories);
|
|
||||||
|
|
||||||
+ // Add /etc/<application>/pref/ directory if it exists
|
|
||||||
+ nsCOMPtr<nsIFile> systemPrefDir;
|
|
||||||
+ rv = NS_GetSpecialDirectory(NS_APP_PREFS_SYSTEM_CONFIG_DIR,
|
|
||||||
+ getter_AddRefs(systemPrefDir));
|
|
||||||
+ if (NS_SUCCEEDED(rv)) {
|
|
||||||
+ rv = systemPrefDir->AppendNative(NS_LITERAL_CSTRING("pref"));
|
|
||||||
+ if (NS_SUCCEEDED(rv))
|
|
||||||
+ directories.AppendObject(systemPrefDir);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
rv = NS_NewArrayEnumerator(aResult, directories, NS_GET_IID(nsIFile));
|
|
||||||
} else if (!strcmp(aProperty, NS_APP_CHROME_DIR_LIST)) {
|
|
||||||
// NS_APP_CHROME_DIR_LIST is only used to get default (native) icons
|
|
||||||
diff -up firefox-75.0/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 firefox-75.0/xpcom/io/nsAppDirectoryServiceDefs.h
|
|
||||||
--- firefox-75.0/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 2020-04-03 21:35:39.000000000 +0200
|
|
||||||
+++ firefox-75.0/xpcom/io/nsAppDirectoryServiceDefs.h 2020-04-06 22:40:02.761674865 +0200
|
|
||||||
@@ -60,6 +60,7 @@
|
|
||||||
#define NS_APP_PREFS_DEFAULTS_DIR_LIST "PrefDL"
|
|
||||||
#define NS_APP_PREFS_OVERRIDE_DIR \
|
|
||||||
"PrefDOverride" // Directory for per-profile defaults
|
|
||||||
+#define NS_APP_PREFS_SYSTEM_CONFIG_DIR "PrefSysConf" // Directory with system-wide configuration
|
|
||||||
|
|
||||||
#define NS_APP_USER_PROFILE_50_DIR "ProfD"
|
|
||||||
#define NS_APP_USER_PROFILE_LOCAL_50_DIR "ProfLD"
|
|
||||||
@ -1,12 +0,0 @@
|
|||||||
diff -up firefox-70.0/layout/base/PresShell.h.1354671 firefox-70.0/layout/base/PresShell.h
|
|
||||||
--- firefox-70.0/layout/base/PresShell.h.1354671 2019-10-22 12:33:12.987775587 +0200
|
|
||||||
+++ firefox-70.0/layout/base/PresShell.h 2019-10-22 12:36:39.999366086 +0200
|
|
||||||
@@ -257,7 +257,7 @@ class PresShell final : public nsStubDoc
|
|
||||||
* to the same aSize value. AllocateFrame is infallible and will abort
|
|
||||||
* on out-of-memory.
|
|
||||||
*/
|
|
||||||
- void* AllocateFrame(nsQueryFrame::FrameIID aID, size_t aSize) {
|
|
||||||
+ void* __attribute__((optimize("no-lifetime-dse"))) AllocateFrame(nsQueryFrame::FrameIID aID, size_t aSize) {
|
|
||||||
#define FRAME_ID(classname, ...) \
|
|
||||||
static_assert(size_t(nsQueryFrame::FrameIID::classname##_id) == \
|
|
||||||
size_t(eArenaObjectID_##classname), \
|
|
||||||
@ -1,6 +0,0 @@
|
|||||||
build-disable-elfhack.patch
|
|
||||||
|
|
||||||
mozilla-1170092.patch
|
|
||||||
rhbz-1354671.patch
|
|
||||||
|
|
||||||
Bug-1238661---fix-mozillaSignalTrampoline-to-work-.patch
|
|
||||||
@ -1,10 +0,0 @@
|
|||||||
[Desktop Entry]
|
|
||||||
Name=Mozilla Thunderbird
|
|
||||||
Comment=Mail & News Reader
|
|
||||||
Exec=/usr/bin/thunderbird %u
|
|
||||||
Icon=thunderbird-icon-unbranded
|
|
||||||
Terminal=false
|
|
||||||
Type=Application
|
|
||||||
Categories=Office;Email;
|
|
||||||
MimeType=text/x-vcard;text/directory;application/mbox;message/rfc822;x-scheme-handler/mailto;
|
|
||||||
StartupNotify=true
|
|
||||||
@ -1,10 +0,0 @@
|
|||||||
[Desktop Entry]
|
|
||||||
Name=Mozilla Thunderbird
|
|
||||||
Comment=Mail & News Reader
|
|
||||||
Exec=/usr/bin/thunderbird %u
|
|
||||||
Icon=thunderbird-icon
|
|
||||||
Terminal=false
|
|
||||||
Type=Application
|
|
||||||
Categories=Office;Email;
|
|
||||||
MimeType=text/x-vcard;text/directory;application/mbox;message/rfc822;x-scheme-handler/mailto;
|
|
||||||
StartupNotify=true
|
|
||||||
@ -1,34 +0,0 @@
|
|||||||
From 89767f5dd97e69d7e9189e5603647645818d27d6 Mon Sep 17 00:00:00 2001
|
|
||||||
From: marxin <mliska@suse.cz>
|
|
||||||
Date: Thu, 29 Nov 2018 10:07:29 +0100
|
|
||||||
Subject: [PATCH 2/3] Add kde.js in order to survive PGO build.
|
|
||||||
|
|
||||||
---
|
|
||||||
browser/app/Makefile.in | 1 +
|
|
||||||
kde.js | 2 ++
|
|
||||||
2 files changed, 3 insertions(+)
|
|
||||||
create mode 100644 kde.js
|
|
||||||
|
|
||||||
diff --git a/browser/app/Makefile.in b/browser/app/Makefile.in
|
|
||||||
index 4129aa43fb91..c9950895d520 100644
|
|
||||||
--- a/browser/app/Makefile.in
|
|
||||||
+++ b/browser/app/Makefile.in
|
|
||||||
@@ -57,6 +57,7 @@ endif
|
|
||||||
libs:: $(srcdir)/profile/channel-prefs.js
|
|
||||||
$(NSINSTALL) -D $(DIST)/bin/defaults/pref
|
|
||||||
$(call py_action,preprocessor,-Fsubstitution $(PREF_PPFLAGS) $(ACDEFINES) $^ -o $(DIST)/bin/defaults/pref/channel-prefs.js)
|
|
||||||
+ cp $(topsrcdir)/kde.js $(DIST)/bin/defaults/pref/kde.js
|
|
||||||
|
|
||||||
ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT))
|
|
||||||
|
|
||||||
diff --git a/kde.js b/kde.js
|
|
||||||
new file mode 100644
|
|
||||||
index 000000000000..b0d3e5d20437
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/kde.js
|
|
||||||
@@ -0,0 +1,2 @@
|
|
||||||
+pref("browser.preferences.instantApply", false);
|
|
||||||
+pref("browser.backspace_action", 0);
|
|
||||||
--
|
|
||||||
2.19.1
|
|
||||||
|
|
||||||
@ -1,50 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# Parent e0751ad74e835e80041a61ea00c2a63bf6fbe2de
|
|
||||||
# Parent 8a401a01454e9f5e8a357262d774e0ff348d9bc1
|
|
||||||
|
|
||||||
diff --git a/browser/branding/branding-common.mozbuild b/browser/branding/branding-common.mozbuild
|
|
||||||
--- a/browser/branding/branding-common.mozbuild
|
|
||||||
+++ b/browser/branding/branding-common.mozbuild
|
|
||||||
@@ -22,12 +22,15 @@ def FirefoxBranding():
|
|
||||||
FINAL_TARGET_FILES.VisualElements += [
|
|
||||||
'VisualElements_150.png',
|
|
||||||
'VisualElements_70.png',
|
|
||||||
]
|
|
||||||
elif 'gtk' in CONFIG['MOZ_WIDGET_TOOLKIT']:
|
|
||||||
FINAL_TARGET_FILES.chrome.icons.default += [
|
|
||||||
'default128.png',
|
|
||||||
'default16.png',
|
|
||||||
+ 'default22.png',
|
|
||||||
+ 'default24.png',
|
|
||||||
+ 'default256.png',
|
|
||||||
'default32.png',
|
|
||||||
'default48.png',
|
|
||||||
'default64.png',
|
|
||||||
]
|
|
||||||
diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in
|
|
||||||
--- a/browser/installer/package-manifest.in
|
|
||||||
+++ b/browser/installer/package-manifest.in
|
|
||||||
@@ -404,20 +404,23 @@
|
|
||||||
@RESPATH@/browser/chrome/pdfjs.manifest
|
|
||||||
@RESPATH@/browser/chrome/pdfjs/*
|
|
||||||
@RESPATH@/chrome/toolkit@JAREXT@
|
|
||||||
@RESPATH@/chrome/toolkit.manifest
|
|
||||||
@RESPATH@/chrome/recording.manifest
|
|
||||||
@RESPATH@/chrome/recording/*
|
|
||||||
#ifdef MOZ_GTK
|
|
||||||
@RESPATH@/browser/chrome/icons/default/default16.png
|
|
||||||
+@RESPATH@/browser/chrome/icons/default/default22.png
|
|
||||||
+@RESPATH@/browser/chrome/icons/default/default24.png
|
|
||||||
@RESPATH@/browser/chrome/icons/default/default32.png
|
|
||||||
@RESPATH@/browser/chrome/icons/default/default48.png
|
|
||||||
@RESPATH@/browser/chrome/icons/default/default64.png
|
|
||||||
@RESPATH@/browser/chrome/icons/default/default128.png
|
|
||||||
+@RESPATH@/browser/chrome/icons/default/default256.png
|
|
||||||
#endif
|
|
||||||
@RESPATH@/browser/features/*
|
|
||||||
|
|
||||||
; [Webide Files]
|
|
||||||
@RESPATH@/browser/chrome/webide@JAREXT@
|
|
||||||
@RESPATH@/browser/chrome/webide.manifest
|
|
||||||
@RESPATH@/browser/@PREF_DIR@/webide.js
|
|
||||||
|
|
||||||
File diff suppressed because it is too large
Load Diff
@ -1,3 +0,0 @@
|
|||||||
pref("intl.locale.requested", "");
|
|
||||||
pref("intl.multilingual.enabled", true);
|
|
||||||
pref("spellchecker.dictionary_path", "/usr/share/myspell");
|
|
||||||
@ -1,81 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# Parent 051b75a600dfbf7503c3485cebfd34d4eb29be96
|
|
||||||
Taken from https://bugzilla.mozilla.org/show_bug.cgi?id=1504834
|
|
||||||
|
|
||||||
diff -r 051b75a600df gfx/2d/DrawTargetSkia.cpp
|
|
||||||
--- a/gfx/2d/DrawTargetSkia.cpp Fri Jul 05 12:42:44 2019 +0200
|
|
||||||
+++ b/gfx/2d/DrawTargetSkia.cpp Mon Jul 08 10:59:30 2019 +0200
|
|
||||||
@@ -138,8 +138,7 @@
|
|
||||||
return surfaceBounds.Intersect(bounds);
|
|
||||||
}
|
|
||||||
|
|
||||||
-static const int kARGBAlphaOffset =
|
|
||||||
- SurfaceFormat::A8R8G8B8_UINT32 == SurfaceFormat::B8G8R8A8 ? 3 : 0;
|
|
||||||
+static const int kARGBAlphaOffset = 0; // Skia is always BGRA SurfaceFormat::A8R8G8B8_UINT32 == SurfaceFormat::B8G8R8A8 ? 3 : 0;
|
|
||||||
|
|
||||||
static bool VerifyRGBXFormat(uint8_t* aData, const IntSize& aSize,
|
|
||||||
const int32_t aStride, SurfaceFormat aFormat) {
|
|
||||||
diff -r 051b75a600df gfx/2d/Types.h
|
|
||||||
--- a/gfx/2d/Types.h Fri Jul 05 12:42:44 2019 +0200
|
|
||||||
+++ b/gfx/2d/Types.h Mon Jul 08 10:59:30 2019 +0200
|
|
||||||
@@ -85,15 +85,8 @@
|
|
||||||
// The following values are endian-independent synonyms. The _UINT32 suffix
|
|
||||||
// indicates that the name reflects the layout when viewed as a uint32_t
|
|
||||||
// value.
|
|
||||||
-#if MOZ_LITTLE_ENDIAN
|
|
||||||
A8R8G8B8_UINT32 = B8G8R8A8, // 0xAARRGGBB
|
|
||||||
X8R8G8B8_UINT32 = B8G8R8X8 // 0x00RRGGBB
|
|
||||||
-#elif MOZ_BIG_ENDIAN
|
|
||||||
- A8R8G8B8_UINT32 = A8R8G8B8, // 0xAARRGGBB
|
|
||||||
- X8R8G8B8_UINT32 = X8R8G8B8 // 0x00RRGGBB
|
|
||||||
-#else
|
|
||||||
-# error "bad endianness"
|
|
||||||
-#endif
|
|
||||||
};
|
|
||||||
|
|
||||||
static inline int BytesPerPixel(SurfaceFormat aFormat) {
|
|
||||||
diff -r 051b75a600df gfx/skia/skia/third_party/skcms/skcms.cc
|
|
||||||
--- a/gfx/skia/skia/third_party/skcms/skcms.cc Fri Jul 05 12:42:44 2019 +0200
|
|
||||||
+++ b/gfx/skia/skia/third_party/skcms/skcms.cc Mon Jul 08 10:59:30 2019 +0200
|
|
||||||
@@ -17,6 +17,8 @@
|
|
||||||
#include <arm_neon.h>
|
|
||||||
#elif defined(__SSE__)
|
|
||||||
#include <immintrin.h>
|
|
||||||
+#else
|
|
||||||
+ #define SKCMS_PORTABLE
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// sizeof(x) will return size_t, which is 32-bit on some machines and 64-bit on others.
|
|
||||||
@@ -124,20 +126,28 @@
|
|
||||||
static uint16_t read_big_u16(const uint8_t* ptr) {
|
|
||||||
uint16_t be;
|
|
||||||
memcpy(&be, ptr, sizeof(be));
|
|
||||||
-#if defined(_MSC_VER)
|
|
||||||
+#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
|
|
||||||
+ return be;
|
|
||||||
+#else
|
|
||||||
+ #if defined(_MSC_VER)
|
|
||||||
return _byteswap_ushort(be);
|
|
||||||
-#else
|
|
||||||
+ #else
|
|
||||||
return __builtin_bswap16(be);
|
|
||||||
+ #endif
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
static uint32_t read_big_u32(const uint8_t* ptr) {
|
|
||||||
uint32_t be;
|
|
||||||
memcpy(&be, ptr, sizeof(be));
|
|
||||||
-#if defined(_MSC_VER)
|
|
||||||
+#if __BYTE_ORDER == __ORDER_BIG_ENDIAN__
|
|
||||||
+ return be;
|
|
||||||
+#else
|
|
||||||
+ #if defined(_MSC_VER)
|
|
||||||
return _byteswap_ulong(be);
|
|
||||||
-#else
|
|
||||||
+ #else
|
|
||||||
return __builtin_bswap32(be);
|
|
||||||
+ #endif
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,88 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# Parent 548d0a2f3a22bfac32ec0c3921c6c969c8bf32a9
|
|
||||||
Skia does not support big endian. The places to fix are too numerous and upstream (skia, not Mozilla)
|
|
||||||
has no interest in maintaining big endian.
|
|
||||||
So here we try to swizzle the input for skia, so that skia always works on LE, and when it comes
|
|
||||||
out again, we transform back to BE.
|
|
||||||
|
|
||||||
diff -r 548d0a2f3a22 gfx/2d/ConvolutionFilter.cpp
|
|
||||||
--- a/gfx/2d/ConvolutionFilter.cpp Mon Jul 22 16:57:54 2019 +0200
|
|
||||||
+++ b/gfx/2d/ConvolutionFilter.cpp Thu Jul 25 14:27:59 2019 +0200
|
|
||||||
@@ -35,9 +35,38 @@
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
+static void ByteSwapArray(uint8_t *u8Array, int32_t size) {
|
|
||||||
+ uint32_t *array = reinterpret_cast<uint32_t*>(u8Array);
|
|
||||||
+ for (int pxl = 0; pxl < size; ++pxl) {
|
|
||||||
+ // Use an endian swap to move the bytes, i.e. BGRA -> ARGB.
|
|
||||||
+ uint32_t rgba = array[pxl];
|
|
||||||
+ array[pxl] = NativeEndian::swapToLittleEndian(rgba);
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
void ConvolutionFilter::ConvolveHorizontally(const uint8_t* aSrc, uint8_t* aDst,
|
|
||||||
bool aHasAlpha) {
|
|
||||||
+#ifdef MOZ_BIG_ENDIAN
|
|
||||||
+ int outputSize = mFilter->numValues();
|
|
||||||
+
|
|
||||||
+ // Input size isn't handed in, so we have to calculate it quickly
|
|
||||||
+ int inputSize = 0;
|
|
||||||
+ for (int xx = 0; xx < outputSize; ++xx) {
|
|
||||||
+ // Get the filter that determines the current output pixel.
|
|
||||||
+ int filterOffset, filterLength;
|
|
||||||
+ mFilter->FilterForValue(xx, &filterOffset, &filterLength);
|
|
||||||
+ inputSize = std::max(inputSize, filterOffset + filterLength);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ ByteSwapArray((uint8_t*)aSrc, inputSize);
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
SkOpts::convolve_horizontally(aSrc, *mFilter, aDst, aHasAlpha);
|
|
||||||
+
|
|
||||||
+#ifdef MOZ_BIG_ENDIAN
|
|
||||||
+ ByteSwapArray((uint8_t*)aSrc, inputSize);
|
|
||||||
+ ByteSwapArray(aDst, outputSize);
|
|
||||||
+#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
void ConvolutionFilter::ConvolveVertically(uint8_t* const* aSrc, uint8_t* aDst,
|
|
||||||
@@ -49,8 +78,26 @@
|
|
||||||
int32_t filterLength;
|
|
||||||
auto filterValues =
|
|
||||||
mFilter->FilterForValue(aRowIndex, &filterOffset, &filterLength);
|
|
||||||
+
|
|
||||||
+#ifdef MOZ_BIG_ENDIAN
|
|
||||||
+ for (int filterY = 0; filterY < filterLength; filterY++) {
|
|
||||||
+ // Skia only knows LE, so we have to swizzle the input
|
|
||||||
+ ByteSwapArray(aSrc[filterY], aRowSize);
|
|
||||||
+ }
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
SkOpts::convolve_vertically(filterValues, filterLength, aSrc, aRowSize, aDst,
|
|
||||||
aHasAlpha);
|
|
||||||
+
|
|
||||||
+#ifdef MOZ_BIG_ENDIAN
|
|
||||||
+ // After skia is finished, we swizzle back to BE, in case
|
|
||||||
+ // the input is used again somewhere else
|
|
||||||
+ for (int filterY = 0; filterY < filterLength; filterY++) {
|
|
||||||
+ ByteSwapArray(aSrc[filterY], aRowSize);
|
|
||||||
+ }
|
|
||||||
+ // The destination array as well
|
|
||||||
+ ByteSwapArray(aDst, aRowSize);
|
|
||||||
+#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ConvolutionFilter::ComputeResizeFactor is derived from Skia's
|
|
||||||
diff -r 548d0a2f3a22 gfx/skia/skia/include/core/SkPreConfig.h
|
|
||||||
--- a/gfx/skia/skia/include/core/SkPreConfig.h Mon Jul 22 16:57:54 2019 +0200
|
|
||||||
+++ b/gfx/skia/skia/include/core/SkPreConfig.h Thu Jul 25 14:27:59 2019 +0200
|
|
||||||
@@ -73,7 +73,7 @@
|
|
||||||
defined(__ppc__) || defined(__hppa) || \
|
|
||||||
defined(__PPC__) || defined(__PPC64__) || \
|
|
||||||
defined(_MIPSEB) || defined(__ARMEB__) || \
|
|
||||||
- defined(__s390__) || \
|
|
||||||
+ defined(__s390__) || defined(__s390x__) || \
|
|
||||||
(defined(__sh__) && defined(__BIG_ENDIAN__)) || \
|
|
||||||
(defined(__ia64) && defined(__BIG_ENDIAN__))
|
|
||||||
#define SK_CPU_BENDIAN
|
|
||||||
@ -1,38 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# Parent aecb4600e5da17443b224c79eee178c1d8e155e3
|
|
||||||
For FF68, AntiAliasing of XULTexts seem to be broken on big endian (s390x). Text and icons of the sandwich-menu to the
|
|
||||||
right of the address bar, as well as plugin-windows appears transparant, which usually means unreadable (white on white).
|
|
||||||
|
|
||||||
diff -r aecb4600e5da -r 49f25e4c2fd1 gfx/skia/skia/include/private/SkNx.h
|
|
||||||
--- a/gfx/skia/skia/include/private/SkNx.h Tue Aug 20 09:46:55 2019 +0200
|
|
||||||
+++ b/gfx/skia/skia/include/private/SkNx.h Fri Aug 23 15:00:43 2019 +0200
|
|
||||||
@@ -238,7 +238,14 @@
|
|
||||||
AI SkNx operator*(const SkNx& y) const { return fVal * y.fVal; }
|
|
||||||
AI SkNx operator/(const SkNx& y) const { return fVal / y.fVal; }
|
|
||||||
|
|
||||||
- AI SkNx operator&(const SkNx& y) const { return FromBits(ToBits(fVal) & ToBits(y.fVal)); }
|
|
||||||
+ // On Big endian the commented out variant doesn't work,
|
|
||||||
+ // and honestly, I have no idea why it exists in the first place.
|
|
||||||
+ // The reason its broken is, I think, that it defaults to the double-variant of ToBits()
|
|
||||||
+ // which gets a 64-bit integer, and FromBits returns 32-bit,
|
|
||||||
+ // cutting off the wrong half again.
|
|
||||||
+ // Overall, I see no reason to have ToBits and FromBits at all (even for floats/doubles).
|
|
||||||
+ // AI SkNx operator&(const SkNx& y) const { return FromBits(ToBits(fVal) & ToBits(y.fVal)); }
|
|
||||||
+ AI SkNx operator&(const SkNx& y) const { return fVal & y.fVal; }
|
|
||||||
AI SkNx operator|(const SkNx& y) const { return FromBits(ToBits(fVal) | ToBits(y.fVal)); }
|
|
||||||
AI SkNx operator^(const SkNx& y) const { return FromBits(ToBits(fVal) ^ ToBits(y.fVal)); }
|
|
||||||
|
|
||||||
diff -r aecb4600e5da -r 49f25e4c2fd1 gfx/skia/skia/src/opts/SkBlitMask_opts.h
|
|
||||||
--- a/gfx/skia/skia/src/opts/SkBlitMask_opts.h Tue Aug 20 09:46:55 2019 +0200
|
|
||||||
+++ b/gfx/skia/skia/src/opts/SkBlitMask_opts.h Fri Aug 23 15:00:43 2019 +0200
|
|
||||||
@@ -203,7 +203,9 @@
|
|
||||||
// ~~~>
|
|
||||||
// a = 1*aa + d(1-1*aa) = aa + d(1-aa)
|
|
||||||
// c = 0*aa + d(1-1*aa) = d(1-aa)
|
|
||||||
- return Sk4px(Sk16b(aa) & Sk16b(0,0,0,255, 0,0,0,255, 0,0,0,255, 0,0,0,255))
|
|
||||||
+
|
|
||||||
+ // For big endian we have to swap the alpha-mask from 0,0,0,255 to 255,0,0,0
|
|
||||||
+ return Sk4px(Sk16b(aa) & Sk16b(255,0,0,0, 255,0,0,0, 255,0,0,0, 255,0,0,0))
|
|
||||||
+ d.approxMulDiv255(aa.inv());
|
|
||||||
};
|
|
||||||
while (h --> 0) {
|
|
||||||
@ -1,30 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# Parent 46ea866ca3acb8bb5e1709ceb799b9c94f591dec
|
|
||||||
Problem description: Tab-titles that are too long to fit into a tab get faded out.
|
|
||||||
On big endian this is broken and instead of fading out, the
|
|
||||||
tab gets white and the font transparent, leading to an unreadable
|
|
||||||
tab-title
|
|
||||||
Solution: This is not a real solution, but a hack. The real solution would have been
|
|
||||||
to byte-swap the correct buffer, but I could not find it.
|
|
||||||
So the next best thing is to deactivate the fading-effect. Now all tab-titles
|
|
||||||
are readable, albeit not as pretty to look at as they could be.
|
|
||||||
Side-effects: I have not yet found an unwanted side-effect.
|
|
||||||
|
|
||||||
diff -r 46ea866ca3ac -r 6ef20eee3f8f gfx/2d/DrawTargetSkia.cpp
|
|
||||||
--- a/gfx/2d/DrawTargetSkia.cpp Tue Oct 22 12:27:22 2019 +0200
|
|
||||||
+++ b/gfx/2d/DrawTargetSkia.cpp Thu Oct 31 09:11:56 2019 +0100
|
|
||||||
@@ -1861,6 +1861,14 @@
|
|
||||||
SkCanvas::kPreserveLCDText_SaveLayerFlag |
|
|
||||||
(aCopyBackground ? SkCanvas::kInitWithPrevious_SaveLayerFlag : 0));
|
|
||||||
|
|
||||||
+#if MOZ_BIG_ENDIAN
|
|
||||||
+ // Pushing a layer where an aMask is defined produces wrong output.
|
|
||||||
+ // We _should_ endian swap the data, but I couldn't find a workable way to do so
|
|
||||||
+ // Therefore I deactivate those layers in the meantime.
|
|
||||||
+ // The result is: Tab-titles that are longer than the available space should be faded out.
|
|
||||||
+ // The fading doesn't work, so we deactivate the fading-effect here.
|
|
||||||
+ if (!aMask)
|
|
||||||
+#endif
|
|
||||||
mCanvas->saveLayer(saveRec);
|
|
||||||
|
|
||||||
SetPermitSubpixelAA(aOpaque);
|
|
||||||
@ -1,28 +0,0 @@
|
|||||||
diff -r 6ef20eee3f8f gfx/layers/basic/BasicCompositor.cpp
|
|
||||||
--- a/gfx/layers/basic/BasicCompositor.cpp Thu Oct 31 09:11:56 2019 +0100
|
|
||||||
+++ b/gfx/layers/basic/BasicCompositor.cpp Wed Dec 11 16:16:09 2019 +0100
|
|
||||||
@@ -693,9 +693,13 @@
|
|
||||||
|
|
||||||
RefPtr<SourceSurface> sourceMask;
|
|
||||||
Matrix maskTransform;
|
|
||||||
+ // Setting an alpha-mask here breaks the URL-bar on big endian (s390x)
|
|
||||||
+ // if the typed URL is too long for the textbox (automatic scrolling needed)
|
|
||||||
+#if MOZ_LITTLE_ENDIAN
|
|
||||||
if (aTransform.Is2D()) {
|
|
||||||
SetupMask(aEffectChain, dest, offset, sourceMask, maskTransform);
|
|
||||||
}
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
CompositionOp blendMode = CompositionOp::OP_OVER;
|
|
||||||
if (Effect* effect =
|
|
||||||
diff -r 6ef20eee3f8f gfx/layers/composite/CompositableHost.cpp
|
|
||||||
--- a/gfx/layers/composite/CompositableHost.cpp Thu Oct 31 09:11:56 2019 +0100
|
|
||||||
+++ b/gfx/layers/composite/CompositableHost.cpp Wed Dec 11 16:16:09 2019 +0100
|
|
||||||
@@ -91,6 +91,7 @@
|
|
||||||
}
|
|
||||||
MOZ_ASSERT(source);
|
|
||||||
|
|
||||||
+ // Alternatively: Comment out these lines where the alpha-mask is set
|
|
||||||
RefPtr<EffectMask> effect =
|
|
||||||
new EffectMask(source, source->GetSize(), aTransform);
|
|
||||||
aEffects.mSecondaryEffects[EffectTypes::MASK] = effect;
|
|
||||||
@ -1,23 +0,0 @@
|
|||||||
Problem: webGL sites are displayed in the wrong color (usually blue-ish)
|
|
||||||
Solution: Problem is with skia once again. Output of webgl seems endian-correct, but skia only
|
|
||||||
knows how to deal with little endian.
|
|
||||||
So we swizzle the output of webgl after reading it from readpixels()
|
|
||||||
Note: This does not fix all webGL sites, but is a step in the right direction
|
|
||||||
diff -r 6b017d3e9733 gfx/gl/GLContext.h
|
|
||||||
--- a/gfx/gl/GLContext.h Mon Sep 09 10:04:05 2019 +0200
|
|
||||||
+++ b/gfx/gl/GLContext.h Wed Nov 13 17:13:04 2019 +0100
|
|
||||||
@@ -1551,6 +1551,13 @@
|
|
||||||
BEFORE_GL_CALL;
|
|
||||||
mSymbols.fReadPixels(x, y, width, height, format, type, pixels);
|
|
||||||
OnSyncCall();
|
|
||||||
+#if MOZ_BIG_ENDIAN
|
|
||||||
+ uint8_t* itr = (uint8_t*)pixels;
|
|
||||||
+ for (GLsizei i = 0; i < width * height; i++) {
|
|
||||||
+ NativeEndian::swapToLittleEndianInPlace((uint32_t*)itr, 1);
|
|
||||||
+ itr += 4;
|
|
||||||
+ }
|
|
||||||
+#endif
|
|
||||||
AFTER_GL_CALL;
|
|
||||||
mHeavyGLCallsSinceLastFlush = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,18 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# User Wolfgang Rosenauer <wr@rosenauer.org>
|
|
||||||
# Parent a9d61a2614b01b1e0ca37d00a6b11b2571868f86
|
|
||||||
|
|
||||||
diff --git a/media/libcubeb/src/cubeb_utils.cpp b/media/libcubeb/src/cubeb_utils.cpp
|
|
||||||
--- a/media/libcubeb/src/cubeb_utils.cpp
|
|
||||||
+++ b/media/libcubeb/src/cubeb_utils.cpp
|
|
||||||
@@ -15,9 +15,10 @@ size_t cubeb_sample_size(cubeb_sample_fo
|
|
||||||
return sizeof(int16_t);
|
|
||||||
case CUBEB_SAMPLE_FLOAT32LE:
|
|
||||||
case CUBEB_SAMPLE_FLOAT32BE:
|
|
||||||
return sizeof(float);
|
|
||||||
default:
|
|
||||||
// should never happen as all cases are handled above.
|
|
||||||
assert(false);
|
|
||||||
}
|
|
||||||
+ return 0;
|
|
||||||
}
|
|
||||||
File diff suppressed because it is too large
Load Diff
@ -1,35 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# User Wolfgang Rosenauer
|
|
||||||
# Date 1558442915 -7200
|
|
||||||
# Tue May 21 14:48:35 2019 +0200
|
|
||||||
# Node ID 6bcf2dfebc1ea2aa34e5cc61152709fc8e409dc5
|
|
||||||
# Parent 4c434d19d03d5461e54fa22dfb82eaed4cd6631b
|
|
||||||
Do not use gconf for proxy settings if not running within Gnome
|
|
||||||
Index: toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
|
|
||||||
===================================================================
|
|
||||||
RCS file: /cvsroot/mozilla/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp,v
|
|
||||||
retrieving revision 1.1
|
|
||||||
|
|
||||||
diff -r 4c434d19d03d -r 6bcf2dfebc1e toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
|
|
||||||
--- a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp Wed Jun 12 17:43:18 2019 +0000
|
|
||||||
+++ b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp Tue May 21 14:48:35 2019 +0200
|
|
||||||
@@ -55,11 +55,14 @@
|
|
||||||
}
|
|
||||||
|
|
||||||
void nsUnixSystemProxySettings::Init() {
|
|
||||||
- mGSettings = do_GetService(NS_GSETTINGSSERVICE_CONTRACTID);
|
|
||||||
- if (mGSettings) {
|
|
||||||
- mGSettings->GetCollectionForSchema(
|
|
||||||
- NS_LITERAL_CSTRING("org.gnome.system.proxy"),
|
|
||||||
- getter_AddRefs(mProxySettings));
|
|
||||||
+ const char* sessionType = PR_GetEnv("DESKTOP_SESSION");
|
|
||||||
+ if (sessionType && !strcmp(sessionType, "gnome")) {
|
|
||||||
+ mGSettings = do_GetService(NS_GSETTINGSSERVICE_CONTRACTID);
|
|
||||||
+ if (mGSettings) {
|
|
||||||
+ mGSettings->GetCollectionForSchema(
|
|
||||||
+ NS_LITERAL_CSTRING("org.gnome.system.proxy"),
|
|
||||||
+ getter_AddRefs(mProxySettings));
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,34 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# User msirringhaus@suse.de
|
|
||||||
# Date 1560754926 -7200
|
|
||||||
# Mon Jun 17 09:02:06 2019 +0200
|
|
||||||
# Node ID 428161c3b9599083e1b8710eda1760f1f707ab11
|
|
||||||
# Parent 6cd963b6c82ea6629aaf4050851789b78f310338
|
|
||||||
#Description: reduce the rust debuginfo level on selected architectures where
|
|
||||||
# compiling with debuginfo=2 causes the OOM killer to interrupt the build on
|
|
||||||
# launchpad builders. Initially this was only on 32 bit architectures, but with
|
|
||||||
# firefox 63 it started happening frequently on arm64 and ppc64el too.
|
|
||||||
|
|
||||||
diff -r 6cd963b6c82e -r 428161c3b959 build/moz.configure/toolchain.configure
|
|
||||||
--- a/build/moz.configure/toolchain.configure Tue May 21 17:26:58 2019 +0200
|
|
||||||
+++ b/build/moz.configure/toolchain.configure Mon Jun 17 09:02:06 2019 +0200
|
|
||||||
@@ -1865,8 +1865,8 @@
|
|
||||||
return '1' if moz_optimize.optimize else '0'
|
|
||||||
|
|
||||||
|
|
||||||
-@depends(rustc_opt_level, debug_rust, '--enable-debug-symbols')
|
|
||||||
-def rust_compile_flags(opt_level, debug_rust, debug_symbols):
|
|
||||||
+@depends(rustc_opt_level, debug_rust, '--enable-debug-symbols', host)
|
|
||||||
+def rust_compile_flags(opt_level, debug_rust, debug_symbols, host):
|
|
||||||
# Cargo currently supports only two interesting profiles for building:
|
|
||||||
# development and release. Those map (roughly) to --enable-debug and
|
|
||||||
# --disable-debug in Gecko, respectively.
|
|
||||||
@@ -1889,6 +1889,8 @@
|
|
||||||
|
|
||||||
if debug_symbols:
|
|
||||||
debug_info = '2'
|
|
||||||
+ if host.bitness == 32 or host.cpu == 'aarch64' or host.cpu == 'ppc64':
|
|
||||||
+ debug_info = '1'
|
|
||||||
|
|
||||||
opts = []
|
|
||||||
|
|
||||||
@ -1,14 +0,0 @@
|
|||||||
mozilla-nongnome-proxies.patch
|
|
||||||
mozilla-kde.patch
|
|
||||||
mozilla-cubeb-noreturn.patch
|
|
||||||
mozilla-reduce-rust-debuginfo.patch
|
|
||||||
mozilla-bmo849632.patch
|
|
||||||
mozilla-bmo1504834-part1.patch
|
|
||||||
mozilla-bmo1504834-part2.patch
|
|
||||||
mozilla-bmo1504834-part3.patch
|
|
||||||
mozilla-bmo1602730.patch
|
|
||||||
mozilla-bmo1504834-part4.patch
|
|
||||||
|
|
||||||
firefox-kde.patch
|
|
||||||
firefox-branded-icons.patch
|
|
||||||
firefox-add-kde.js-in-order-to-survive-PGO-build.patch
|
|
||||||
@ -1,20 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# User Steve Singer <steve@ssinger.info>
|
|
||||||
# Date 1558451540 -7200
|
|
||||||
# Tue May 21 17:12:20 2019 +0200
|
|
||||||
# Node ID 433beec63e6b5f409683af20a0c1ab137cc7bfad
|
|
||||||
# Parent 0b9b94a6526d4f1aa6e23b95c1f5f7c0bef841a7
|
|
||||||
Bug 1005535 - Get skia GPU building on big endian.
|
|
||||||
|
|
||||||
diff -r 0b9b94a6526d gfx/skia/skia/src/gpu/GrColor.h
|
|
||||||
--- a/gfx/skia/skia/src/gpu/GrColor.h Tue May 21 17:26:58 2019 +0200
|
|
||||||
+++ b/gfx/skia/skia/src/gpu/GrColor.h Wed Jan 08 12:14:52 2020 +0100
|
|
||||||
@@ -64,7 +64,7 @@
|
|
||||||
* Since premultiplied means that alpha >= color, we construct a color with
|
|
||||||
* each component==255 and alpha == 0 to be "illegal"
|
|
||||||
*/
|
|
||||||
-#define GrColor_ILLEGAL (~(0xFF << GrColor_SHIFT_A))
|
|
||||||
+#define GrColor_ILLEGAL ((uint32_t)(~(0xFF << GrColor_SHIFT_A)))
|
|
||||||
|
|
||||||
/** Normalizes and coverts an uint8_t to a float. [0, 255] -> [0.0, 1.0] */
|
|
||||||
static inline float GrNormalizeByteToFloat(uint8_t value) {
|
|
||||||
@ -1,46 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# User Mike Hommey <mh+mozilla@glandium.org>
|
|
||||||
# Date 1526871862 -32400
|
|
||||||
# Mon May 21 12:04:22 2018 +0900
|
|
||||||
# Node ID 74a0c200d7f748a3fe46bb22a38625b074da8e26
|
|
||||||
# Parent 0bf4a038a7129aa6bfd7bb27e7455ab649344ac5
|
|
||||||
Bug 1463035 - Remove MOZ_SIGNAL_TRAMPOLINE. r?darchons
|
|
||||||
|
|
||||||
For some reason, GNU as is not happy with the assembly generated after
|
|
||||||
bug 1238661 anymore on Debian armel.
|
|
||||||
|
|
||||||
OTOH, as mentioned in bug 1238661 comment 4, we actually don't need this
|
|
||||||
workaround anymore, so let's just kill it.
|
|
||||||
|
|
||||||
diff -r 0bf4a038a712 -r 74a0c200d7f7 mozglue/baseprofiler/core/platform-linux-android.cpp
|
|
||||||
--- a/mozglue/baseprofiler/core/platform-linux-android.cpp Tue May 21 14:49:58 2019 +0200
|
|
||||||
+++ b/mozglue/baseprofiler/core/platform-linux-android.cpp Mon May 21 12:04:22 2018 +0900
|
|
||||||
@@ -60,7 +60,6 @@
|
|
||||||
#include <stdarg.h>
|
|
||||||
|
|
||||||
#include "prenv.h"
|
|
||||||
-#include "mozilla/LinuxSignal.h"
|
|
||||||
#include "mozilla/PodOperations.h"
|
|
||||||
#include "mozilla/DebugOnly.h"
|
|
||||||
|
|
||||||
@@ -271,7 +270,7 @@
|
|
||||||
|
|
||||||
// Request profiling signals.
|
|
||||||
struct sigaction sa;
|
|
||||||
- sa.sa_sigaction = MOZ_SIGNAL_TRAMPOLINE(SigprofHandler);
|
|
||||||
+ sa.sa_sigaction = SigprofHandler;
|
|
||||||
sigemptyset(&sa.sa_mask);
|
|
||||||
sa.sa_flags = SA_RESTART | SA_SIGINFO;
|
|
||||||
if (sigaction(SIGPROF, &sa, &mOldSigprofHandler) != 0) {
|
|
||||||
diff -r 0bf4a038a712 -r 74a0c200d7f7 tools/profiler/core/platform-linux-android.cpp
|
|
||||||
--- a/tools/profiler/core/platform-linux-android.cpp Tue May 21 14:49:58 2019 +0200
|
|
||||||
+++ b/tools/profiler/core/platform-linux-android.cpp Mon May 21 12:04:22 2018 +0900
|
|
||||||
@@ -263,7 +263,7 @@
|
|
||||||
|
|
||||||
// Request profiling signals.
|
|
||||||
struct sigaction sa;
|
|
||||||
- sa.sa_sigaction = MOZ_SIGNAL_TRAMPOLINE(SigprofHandler);
|
|
||||||
+ sa.sa_sigaction = SigprofHandler;
|
|
||||||
sigemptyset(&sa.sa_mask);
|
|
||||||
sa.sa_flags = SA_RESTART | SA_SIGINFO;
|
|
||||||
if (sigaction(SIGPROF, &sa, &mOldSigprofHandler) != 0) {
|
|
||||||
@ -1,121 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# Parent 9db312f823881c04c5c16a7623df08cf6aef371d
|
|
||||||
Taken from https://bugzilla.mozilla.org/show_bug.cgi?id=1504834
|
|
||||||
|
|
||||||
diff --git a/gfx/2d/DrawTargetSkia.cpp b/gfx/2d/DrawTargetSkia.cpp
|
|
||||||
--- a/gfx/2d/DrawTargetSkia.cpp
|
|
||||||
+++ b/gfx/2d/DrawTargetSkia.cpp
|
|
||||||
@@ -131,18 +131,17 @@ static IntRect CalculateSurfaceBounds(co
|
|
||||||
Rect sampledBounds = inverse.TransformBounds(*aBounds);
|
|
||||||
if (!sampledBounds.ToIntRect(&bounds)) {
|
|
||||||
return surfaceBounds;
|
|
||||||
}
|
|
||||||
|
|
||||||
return surfaceBounds.Intersect(bounds);
|
|
||||||
}
|
|
||||||
|
|
||||||
-static const int kARGBAlphaOffset =
|
|
||||||
- SurfaceFormat::A8R8G8B8_UINT32 == SurfaceFormat::B8G8R8A8 ? 3 : 0;
|
|
||||||
+static const int kARGBAlphaOffset = 0; // Skia is always BGRA SurfaceFormat::A8R8G8B8_UINT32 == SurfaceFormat::B8G8R8A8 ? 3 : 0;
|
|
||||||
|
|
||||||
static bool VerifyRGBXFormat(uint8_t* aData, const IntSize& aSize,
|
|
||||||
const int32_t aStride, SurfaceFormat aFormat) {
|
|
||||||
if (aFormat != SurfaceFormat::B8G8R8X8 || aSize.IsEmpty()) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
// We should've initialized the data to be opaque already
|
|
||||||
// On debug builds, verify that this is actually true.
|
|
||||||
diff --git a/gfx/2d/Types.h b/gfx/2d/Types.h
|
|
||||||
--- a/gfx/2d/Types.h
|
|
||||||
+++ b/gfx/2d/Types.h
|
|
||||||
@@ -82,25 +82,18 @@ enum class SurfaceFormat : int8_t {
|
|
||||||
Depth,
|
|
||||||
|
|
||||||
// This represents the unknown format.
|
|
||||||
UNKNOWN,
|
|
||||||
|
|
||||||
// The following values are endian-independent synonyms. The _UINT32 suffix
|
|
||||||
// indicates that the name reflects the layout when viewed as a uint32_t
|
|
||||||
// value.
|
|
||||||
-#if MOZ_LITTLE_ENDIAN()
|
|
||||||
A8R8G8B8_UINT32 = B8G8R8A8, // 0xAARRGGBB
|
|
||||||
X8R8G8B8_UINT32 = B8G8R8X8, // 0x00RRGGBB
|
|
||||||
-#elif MOZ_BIG_ENDIAN()
|
|
||||||
- A8R8G8B8_UINT32 = A8R8G8B8, // 0xAARRGGBB
|
|
||||||
- X8R8G8B8_UINT32 = X8R8G8B8, // 0x00RRGGBB
|
|
||||||
-#else
|
|
||||||
-# error "bad endianness"
|
|
||||||
-#endif
|
|
||||||
|
|
||||||
// The following values are OS and endian-independent synonyms.
|
|
||||||
//
|
|
||||||
// TODO(aosmond): When everything blocking bug 1581828 has been resolved, we
|
|
||||||
// can make this use R8B8G8A8 and R8B8G8X8 for non-Windows platforms.
|
|
||||||
OS_RGBA = A8R8G8B8_UINT32,
|
|
||||||
OS_RGBX = X8R8G8B8_UINT32
|
|
||||||
};
|
|
||||||
diff --git a/gfx/skia/skia/third_party/skcms/skcms.cc b/gfx/skia/skia/third_party/skcms/skcms.cc
|
|
||||||
--- a/gfx/skia/skia/third_party/skcms/skcms.cc
|
|
||||||
+++ b/gfx/skia/skia/third_party/skcms/skcms.cc
|
|
||||||
@@ -25,16 +25,18 @@
|
|
||||||
// it'd be a lot slower. But we want all those headers included so we
|
|
||||||
// can use their features after runtime checks later.
|
|
||||||
#include <smmintrin.h>
|
|
||||||
#include <avxintrin.h>
|
|
||||||
#include <avx2intrin.h>
|
|
||||||
#include <avx512fintrin.h>
|
|
||||||
#include <avx512dqintrin.h>
|
|
||||||
#endif
|
|
||||||
+#else
|
|
||||||
+ #define SKCMS_PORTABLE
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// sizeof(x) will return size_t, which is 32-bit on some machines and 64-bit on others.
|
|
||||||
// We have better testing on 64-bit machines, so force 32-bit machines to behave like 64-bit.
|
|
||||||
//
|
|
||||||
// Please do not use sizeof() directly, and size_t only when required.
|
|
||||||
// (We have no way of enforcing these requests...)
|
|
||||||
#define SAFE_SIZEOF(x) ((uint64_t)sizeof(x))
|
|
||||||
@@ -275,30 +277,38 @@ enum {
|
|
||||||
skcms_Signature_sf32 = 0x73663332,
|
|
||||||
// XYZ is also a PCS signature, so it's defined in skcms.h
|
|
||||||
// skcms_Signature_XYZ = 0x58595A20,
|
|
||||||
};
|
|
||||||
|
|
||||||
static uint16_t read_big_u16(const uint8_t* ptr) {
|
|
||||||
uint16_t be;
|
|
||||||
memcpy(&be, ptr, sizeof(be));
|
|
||||||
-#if defined(_MSC_VER)
|
|
||||||
+#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
|
|
||||||
+ return be;
|
|
||||||
+#else
|
|
||||||
+ #if defined(_MSC_VER)
|
|
||||||
return _byteswap_ushort(be);
|
|
||||||
-#else
|
|
||||||
+ #else
|
|
||||||
return __builtin_bswap16(be);
|
|
||||||
+ #endif
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
static uint32_t read_big_u32(const uint8_t* ptr) {
|
|
||||||
uint32_t be;
|
|
||||||
memcpy(&be, ptr, sizeof(be));
|
|
||||||
-#if defined(_MSC_VER)
|
|
||||||
+#if __BYTE_ORDER == __ORDER_BIG_ENDIAN__
|
|
||||||
+ return be;
|
|
||||||
+#else
|
|
||||||
+ #if defined(_MSC_VER)
|
|
||||||
return _byteswap_ulong(be);
|
|
||||||
-#else
|
|
||||||
+ #else
|
|
||||||
return __builtin_bswap32(be);
|
|
||||||
+ #endif
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
static int32_t read_big_i32(const uint8_t* ptr) {
|
|
||||||
return (int32_t)read_big_u32(ptr);
|
|
||||||
}
|
|
||||||
|
|
||||||
static float read_big_fixed(const uint8_t* ptr) {
|
|
||||||
@ -1,88 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# Parent 0e579dcbf7328dda4512cbdafc9b42acec4935ea
|
|
||||||
Skia does not support big endian. The places to fix are too numerous and upstream (skia, not Mozilla)
|
|
||||||
has no interest in maintaining big endian.
|
|
||||||
So here we try to swizzle the input for skia, so that skia always works on LE, and when it comes
|
|
||||||
out again, we transform back to BE.
|
|
||||||
|
|
||||||
diff -r 0e579dcbf732 gfx/2d/ConvolutionFilter.cpp
|
|
||||||
--- a/gfx/2d/ConvolutionFilter.cpp Wed Jan 08 12:17:44 2020 +0100
|
|
||||||
+++ b/gfx/2d/ConvolutionFilter.cpp Wed Jan 08 12:17:49 2020 +0100
|
|
||||||
@@ -35,9 +35,38 @@
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
+static void ByteSwapArray(uint8_t *u8Array, int32_t size) {
|
|
||||||
+ uint32_t *array = reinterpret_cast<uint32_t*>(u8Array);
|
|
||||||
+ for (int pxl = 0; pxl < size; ++pxl) {
|
|
||||||
+ // Use an endian swap to move the bytes, i.e. BGRA -> ARGB.
|
|
||||||
+ uint32_t rgba = array[pxl];
|
|
||||||
+ array[pxl] = NativeEndian::swapToLittleEndian(rgba);
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
void ConvolutionFilter::ConvolveHorizontally(const uint8_t* aSrc, uint8_t* aDst,
|
|
||||||
bool aHasAlpha) {
|
|
||||||
+#if MOZ_BIG_ENDIAN()
|
|
||||||
+ int outputSize = mFilter->numValues();
|
|
||||||
+
|
|
||||||
+ // Input size isn't handed in, so we have to calculate it quickly
|
|
||||||
+ int inputSize = 0;
|
|
||||||
+ for (int xx = 0; xx < outputSize; ++xx) {
|
|
||||||
+ // Get the filter that determines the current output pixel.
|
|
||||||
+ int filterOffset, filterLength;
|
|
||||||
+ mFilter->FilterForValue(xx, &filterOffset, &filterLength);
|
|
||||||
+ inputSize = std::max(inputSize, filterOffset + filterLength);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ ByteSwapArray((uint8_t*)aSrc, inputSize);
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
SkOpts::convolve_horizontally(aSrc, *mFilter, aDst, aHasAlpha);
|
|
||||||
+
|
|
||||||
+#if MOZ_BIG_ENDIAN()
|
|
||||||
+ ByteSwapArray((uint8_t*)aSrc, inputSize);
|
|
||||||
+ ByteSwapArray(aDst, outputSize);
|
|
||||||
+#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
void ConvolutionFilter::ConvolveVertically(uint8_t* const* aSrc, uint8_t* aDst,
|
|
||||||
@@ -49,8 +78,26 @@
|
|
||||||
int32_t filterLength;
|
|
||||||
auto filterValues =
|
|
||||||
mFilter->FilterForValue(aRowIndex, &filterOffset, &filterLength);
|
|
||||||
+
|
|
||||||
+#if MOZ_BIG_ENDIAN()
|
|
||||||
+ for (int filterY = 0; filterY < filterLength; filterY++) {
|
|
||||||
+ // Skia only knows LE, so we have to swizzle the input
|
|
||||||
+ ByteSwapArray(aSrc[filterY], aRowSize);
|
|
||||||
+ }
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
SkOpts::convolve_vertically(filterValues, filterLength, aSrc, aRowSize, aDst,
|
|
||||||
aHasAlpha);
|
|
||||||
+
|
|
||||||
+#if MOZ_BIG_ENDIAN()
|
|
||||||
+ // After skia is finished, we swizzle back to BE, in case
|
|
||||||
+ // the input is used again somewhere else
|
|
||||||
+ for (int filterY = 0; filterY < filterLength; filterY++) {
|
|
||||||
+ ByteSwapArray(aSrc[filterY], aRowSize);
|
|
||||||
+ }
|
|
||||||
+ // The destination array as well
|
|
||||||
+ ByteSwapArray(aDst, aRowSize);
|
|
||||||
+#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
/* ConvolutionFilter::ComputeResizeFactor is derived from Skia's
|
|
||||||
diff -r 0e579dcbf732 gfx/skia/skia/include/core/SkPreConfig.h
|
|
||||||
--- a/gfx/skia/skia/include/core/SkPreConfig.h Wed Jan 08 12:17:44 2020 +0100
|
|
||||||
+++ b/gfx/skia/skia/include/core/SkPreConfig.h Wed Jan 08 12:17:49 2020 +0100
|
|
||||||
@@ -73,7 +73,7 @@
|
|
||||||
defined(__ppc__) || defined(__hppa) || \
|
|
||||||
defined(__PPC__) || defined(__PPC64__) || \
|
|
||||||
defined(_MIPSEB) || defined(__ARMEB__) || \
|
|
||||||
- defined(__s390__) || \
|
|
||||||
+ defined(__s390__) || defined(__s390x__) || \
|
|
||||||
(defined(__sh__) && defined(__BIG_ENDIAN__)) || \
|
|
||||||
(defined(__ia64) && defined(__BIG_ENDIAN__))
|
|
||||||
#define SK_CPU_BENDIAN
|
|
||||||
@ -1,44 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# Parent aecb4600e5da17443b224c79eee178c1d8e155e3
|
|
||||||
For FF68, AntiAliasing of XULTexts seem to be broken on big endian (s390x). Text and icons of the sandwich-menu to the
|
|
||||||
right of the address bar, as well as plugin-windows appears transparant, which usually means unreadable (white on white).
|
|
||||||
|
|
||||||
diff -r aecb4600e5da gfx/skia/skia/include/private/SkNx.h
|
|
||||||
--- a/gfx/skia/skia/include/private/SkNx.h Tue Aug 20 09:46:55 2019 +0200
|
|
||||||
+++ b/gfx/skia/skia/include/private/SkNx.h Mon Sep 09 10:04:06 2019 +0200
|
|
||||||
@@ -238,7 +238,18 @@
|
|
||||||
AI SkNx operator*(const SkNx& y) const { return fVal * y.fVal; }
|
|
||||||
AI SkNx operator/(const SkNx& y) const { return fVal / y.fVal; }
|
|
||||||
|
|
||||||
+ // On Big endian the commented out variant doesn't work,
|
|
||||||
+ // and honestly, I have no idea why it exists in the first place.
|
|
||||||
+ // The reason its broken is, I think, that it defaults to the double-variant of ToBits()
|
|
||||||
+ // which gets a 64-bit integer, and FromBits returns 32-bit,
|
|
||||||
+ // cutting off the wrong half again.
|
|
||||||
+ // Overall, I see no reason to have ToBits and FromBits at all (even for floats/doubles).
|
|
||||||
+ // Still we are only "fixing" this for big endian and leave little endian alone (never touch a running system)
|
|
||||||
+#ifdef SK_CPU_BENDIAN
|
|
||||||
+ AI SkNx operator&(const SkNx& y) const { return fVal & y.fVal; }
|
|
||||||
+#else
|
|
||||||
AI SkNx operator&(const SkNx& y) const { return FromBits(ToBits(fVal) & ToBits(y.fVal)); }
|
|
||||||
+#endif
|
|
||||||
AI SkNx operator|(const SkNx& y) const { return FromBits(ToBits(fVal) | ToBits(y.fVal)); }
|
|
||||||
AI SkNx operator^(const SkNx& y) const { return FromBits(ToBits(fVal) ^ ToBits(y.fVal)); }
|
|
||||||
|
|
||||||
diff -r aecb4600e5da gfx/skia/skia/src/opts/SkBlitMask_opts.h
|
|
||||||
--- a/gfx/skia/skia/src/opts/SkBlitMask_opts.h Tue Aug 20 09:46:55 2019 +0200
|
|
||||||
+++ b/gfx/skia/skia/src/opts/SkBlitMask_opts.h Mon Sep 09 10:04:06 2019 +0200
|
|
||||||
@@ -203,7 +203,13 @@
|
|
||||||
// ~~~>
|
|
||||||
// a = 1*aa + d(1-1*aa) = aa + d(1-aa)
|
|
||||||
// c = 0*aa + d(1-1*aa) = d(1-aa)
|
|
||||||
+
|
|
||||||
+ // For big endian we have to swap the alpha-mask from 0,0,0,255 to 255,0,0,0
|
|
||||||
+#ifdef SK_CPU_BENDIAN
|
|
||||||
+ return Sk4px(Sk16b(aa) & Sk16b(255,0,0,0, 255,0,0,0, 255,0,0,0, 255,0,0,0))
|
|
||||||
+#else
|
|
||||||
return Sk4px(Sk16b(aa) & Sk16b(0,0,0,255, 0,0,0,255, 0,0,0,255, 0,0,0,255))
|
|
||||||
+#endif
|
|
||||||
+ d.approxMulDiv255(aa.inv());
|
|
||||||
};
|
|
||||||
while (h --> 0) {
|
|
||||||
@ -1,30 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# Parent 46ea866ca3acb8bb5e1709ceb799b9c94f591dec
|
|
||||||
Problem description: Tab-titles that are too long to fit into a tab get faded out.
|
|
||||||
On big endian this is broken and instead of fading out, the
|
|
||||||
tab gets white and the font transparent, leading to an unreadable
|
|
||||||
tab-title
|
|
||||||
Solution: This is not a real solution, but a hack. The real solution would have been
|
|
||||||
to byte-swap the correct buffer, but I could not find it.
|
|
||||||
So the next best thing is to deactivate the fading-effect. Now all tab-titles
|
|
||||||
are readable, albeit not as pretty to look at as they could be.
|
|
||||||
Side-effects: I have not yet found an unwanted side-effect.
|
|
||||||
|
|
||||||
diff -r 46ea866ca3ac -r 6ef20eee3f8f gfx/2d/DrawTargetSkia.cpp
|
|
||||||
--- a/gfx/2d/DrawTargetSkia.cpp Tue Oct 22 12:27:22 2019 +0200
|
|
||||||
+++ b/gfx/2d/DrawTargetSkia.cpp Thu Oct 31 09:11:56 2019 +0100
|
|
||||||
@@ -1861,6 +1861,14 @@
|
|
||||||
SkCanvas::kPreserveLCDText_SaveLayerFlag |
|
|
||||||
(aCopyBackground ? SkCanvas::kInitWithPrevious_SaveLayerFlag : 0));
|
|
||||||
|
|
||||||
+#if MOZ_BIG_ENDIAN()
|
|
||||||
+ // Pushing a layer where an aMask is defined produces wrong output.
|
|
||||||
+ // We _should_ endian swap the data, but I couldn't find a workable way to do so
|
|
||||||
+ // Therefore I deactivate those layers in the meantime.
|
|
||||||
+ // The result is: Tab-titles that are longer than the available space should be faded out.
|
|
||||||
+ // The fading doesn't work, so we deactivate the fading-effect here.
|
|
||||||
+ if (!aMask)
|
|
||||||
+#endif
|
|
||||||
mCanvas->saveLayer(saveRec);
|
|
||||||
|
|
||||||
SetPermitSubpixelAA(aOpaque);
|
|
||||||
@ -1,34 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# Parent e5858dc7ab007042436496f7cfb9a5abf10f5082
|
|
||||||
This fixes a broken build for gcc < 9 on ppc64le.
|
|
||||||
This patch can be removed for newer gcc-versions.
|
|
||||||
|
|
||||||
diff -r e5858dc7ab00 -r 5d3469aabe61 js/xpconnect/src/XPCWrappedNative.cpp
|
|
||||||
--- a/js/xpconnect/src/XPCWrappedNative.cpp Thu Nov 29 10:07:29 2018 +0100
|
|
||||||
+++ b/js/xpconnect/src/XPCWrappedNative.cpp Tue Sep 10 12:42:13 2019 +0200
|
|
||||||
@@ -1092,7 +1092,11 @@
|
|
||||||
MOZ_ALWAYS_INLINE bool GetOutParamSource(uint8_t paramIndex,
|
|
||||||
MutableHandleValue srcp) const;
|
|
||||||
|
|
||||||
- MOZ_ALWAYS_INLINE bool GatherAndConvertResults();
|
|
||||||
+#if !(__GNUC__ && __linux__ && __PPC64__ && _LITTLE_ENDIAN)
|
|
||||||
+// Work around a compiler bug on ppc64le (bug 1512162).
|
|
||||||
+ MOZ_ALWAYS_INLINE
|
|
||||||
+#endif
|
|
||||||
+ bool GatherAndConvertResults();
|
|
||||||
|
|
||||||
MOZ_ALWAYS_INLINE bool QueryInterfaceFastPath();
|
|
||||||
|
|
||||||
@@ -1139,7 +1143,11 @@
|
|
||||||
|
|
||||||
~CallMethodHelper();
|
|
||||||
|
|
||||||
- MOZ_ALWAYS_INLINE bool Call();
|
|
||||||
+#if !(__GNUC__ && __linux__ && __PPC64__ && _LITTLE_ENDIAN)
|
|
||||||
+// Work around a compiler bug on ppc64le (bug 1512162).
|
|
||||||
+ MOZ_ALWAYS_INLINE
|
|
||||||
+#endif
|
|
||||||
+ bool Call();
|
|
||||||
|
|
||||||
// Trace implementation so we can put our CallMethodHelper in a Rooted<T>.
|
|
||||||
void trace(JSTracer* aTrc);
|
|
||||||
@ -1,22 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# Parent a25cebecb02d5460b8ad757fe9cb4a9c8d1d7658
|
|
||||||
Eliminate startup error message:
|
|
||||||
JavaScript error: , line 0: Error: Type error for platformInfo value (Error processing arch: Invalid enumeration value "s390x") for runtime.getPlatformInfo.
|
|
||||||
|
|
||||||
Reported here: https://bugzilla.mozilla.org/show_bug.cgi?id=1554971
|
|
||||||
|
|
||||||
Uncertain if this is causing real problems or not. Also uncertain if the fix actually fixes anything.
|
|
||||||
No response from upstream yet.
|
|
||||||
|
|
||||||
diff -r a25cebecb02d -r 378b81b00e73 toolkit/components/extensions/schemas/runtime.json
|
|
||||||
--- a/toolkit/components/extensions/schemas/runtime.json Fri Jul 05 12:42:44 2019 +0200
|
|
||||||
+++ b/toolkit/components/extensions/schemas/runtime.json Fri Jul 19 13:19:30 2019 +0200
|
|
||||||
@@ -64,7 +64,7 @@
|
|
||||||
{
|
|
||||||
"id": "PlatformArch",
|
|
||||||
"type": "string",
|
|
||||||
- "enum": ["arm", "x86-32", "x86-64"],
|
|
||||||
+ "enum": ["arm", "x86-32", "x86-64", "s390x", "aarch64", "ppc64le"],
|
|
||||||
"allowedContexts": ["content", "devtools"],
|
|
||||||
"description": "The machine's processor architecture."
|
|
||||||
},
|
|
||||||
@ -1,30 +0,0 @@
|
|||||||
Author: Bernhard M. Wiedemann <bwiedemann suse de>
|
|
||||||
Date: 2019-07-22
|
|
||||||
|
|
||||||
Allow to override build date with SOURCE_DATE_EPOCH
|
|
||||||
in order to make builds reproducible.
|
|
||||||
See https://reproducible-builds.org/ for why this is good
|
|
||||||
and https://reproducible-builds.org/specs/source-date-epoch/
|
|
||||||
for the definition of this variable.
|
|
||||||
|
|
||||||
diff --git a/python/mozbuild/mozbuild/action/langpack_manifest.py b/python/mozbuild/mozbuild/action/langpack_manifest.py
|
|
||||||
index 6f72697..d4cca96 100644
|
|
||||||
--- a/python/mozbuild/mozbuild/action/langpack_manifest.py
|
|
||||||
+++ b/python/mozbuild/mozbuild/action/langpack_manifest.py
|
|
||||||
@@ -16,6 +16,7 @@ import os
|
|
||||||
import json
|
|
||||||
import io
|
|
||||||
import datetime
|
|
||||||
+import time
|
|
||||||
import requests
|
|
||||||
import mozversioncontrol
|
|
||||||
import mozpack.path as mozpath
|
|
||||||
@@ -100,7 +101,7 @@ def get_timestamp_for_locale(path):
|
|
||||||
dt = get_dt_from_hg(path)
|
|
||||||
|
|
||||||
if dt is None:
|
|
||||||
- dt = datetime.datetime.utcnow()
|
|
||||||
+ dt = datetime.datetime.utcfromtimestamp(int(os.environ.get('SOURCE_DATE_EPOCH', time.time())))
|
|
||||||
|
|
||||||
dt = dt.replace(microsecond=0)
|
|
||||||
return dt.strftime("%Y%m%d%H%M%S")
|
|
||||||
@ -1,25 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# User msirringhaus@suse.de
|
|
||||||
# Date 1582805890 -3600
|
|
||||||
# Thu Feb 27 13:18:10 2020 +0100
|
|
||||||
# Node ID 457cbe5705f2a3759d3da36a05c0ed66ec61ea12
|
|
||||||
# Parent 7440f4b6bab85068ca2f84e9c48e0706d04330e8
|
|
||||||
imported patch mozilla-bmo1602730-FF73.patch
|
|
||||||
|
|
||||||
diff -r 7440f4b6bab8 gfx/layers/composite/CompositableHost.cpp
|
|
||||||
--- a/gfx/layers/composite/CompositableHost.cpp Thu Feb 27 13:17:56 2020 +0100
|
|
||||||
+++ b/gfx/layers/composite/CompositableHost.cpp Wed Jun 17 15:33:32 2020 +0200
|
|
||||||
@@ -92,9 +92,13 @@
|
|
||||||
}
|
|
||||||
MOZ_ASSERT(source);
|
|
||||||
|
|
||||||
+ // Setting an alpha-mask here breaks the URL-bar on big endian (s390x)
|
|
||||||
+ // if the typed URL is too long for the textbox (automatic scrolling needed)
|
|
||||||
+#if MOZ_LITTLE_ENDIAN()
|
|
||||||
RefPtr<EffectMask> effect =
|
|
||||||
new EffectMask(source, source->GetSize(), aTransform);
|
|
||||||
aEffects.mSecondaryEffects[EffectTypes::MASK] = effect;
|
|
||||||
+#endif
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,85 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# User msirringhaus@suse.de
|
|
||||||
# Date 1582805876 -3600
|
|
||||||
# Thu Feb 27 13:17:56 2020 +0100
|
|
||||||
# Node ID cc3d09abea31068e57f1ab918782f9f86fc6a158
|
|
||||||
# Parent 9cd90914846f667f18babc491a74c164ae5d6e9f
|
|
||||||
imported patch decoder_workaround.patch
|
|
||||||
|
|
||||||
diff -r 9cd90914846f image/decoders/nsGIFDecoder2.cpp
|
|
||||||
--- a/image/decoders/nsGIFDecoder2.cpp Thu Feb 27 12:57:14 2020 +0100
|
|
||||||
+++ b/image/decoders/nsGIFDecoder2.cpp Fri Mar 27 13:06:18 2020 +0100
|
|
||||||
@@ -422,6 +422,9 @@
|
|
||||||
MOZ_ASSERT(mSwizzleFn);
|
|
||||||
uint8_t* data = reinterpret_cast<uint8_t*>(aColormap);
|
|
||||||
mSwizzleFn(data, data, aColors);
|
|
||||||
+#if MOZ_BIG_ENDIAN()
|
|
||||||
+ SwizzleRow(SurfaceFormat::A8R8G8B8, SurfaceFormat::B8G8R8A8)(data, data, aColors);
|
|
||||||
+#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
LexerResult nsGIFDecoder2::DoDecode(SourceBufferIterator& aIterator,
|
|
||||||
diff -r 9cd90914846f image/decoders/nsJPEGDecoder.cpp
|
|
||||||
--- a/image/decoders/nsJPEGDecoder.cpp Thu Feb 27 12:57:14 2020 +0100
|
|
||||||
+++ b/image/decoders/nsJPEGDecoder.cpp Fri Mar 27 13:06:18 2020 +0100
|
|
||||||
@@ -263,6 +263,9 @@
|
|
||||||
case JCS_YCbCr:
|
|
||||||
// By default, we will output directly to BGRA. If we need to apply
|
|
||||||
// special color transforms, this may change.
|
|
||||||
+#if MOZ_BIG_ENDIAN()
|
|
||||||
+ mInfo.out_color_space = MOZ_JCS_EXT_NATIVE_ENDIAN_XRGB;
|
|
||||||
+#else
|
|
||||||
switch (SurfaceFormat::OS_RGBX) {
|
|
||||||
case SurfaceFormat::B8G8R8X8:
|
|
||||||
mInfo.out_color_space = JCS_EXT_BGRX;
|
|
||||||
@@ -277,6 +280,7 @@
|
|
||||||
mState = JPEG_ERROR;
|
|
||||||
return Transition::TerminateFailure();
|
|
||||||
}
|
|
||||||
+#endif
|
|
||||||
break;
|
|
||||||
case JCS_CMYK:
|
|
||||||
case JCS_YCCK:
|
|
||||||
diff -r 9cd90914846f image/decoders/nsPNGDecoder.cpp
|
|
||||||
--- a/image/decoders/nsPNGDecoder.cpp Thu Feb 27 12:57:14 2020 +0100
|
|
||||||
+++ b/image/decoders/nsPNGDecoder.cpp Fri Mar 27 13:06:18 2020 +0100
|
|
||||||
@@ -361,7 +361,7 @@
|
|
||||||
IResumable* aOnResume) {
|
|
||||||
MOZ_ASSERT(!HasError(), "Shouldn't call DoDecode after error!");
|
|
||||||
|
|
||||||
- return mLexer.Lex(aIterator, aOnResume,
|
|
||||||
+ LexerResult res = mLexer.Lex(aIterator, aOnResume,
|
|
||||||
[=](State aState, const char* aData, size_t aLength) {
|
|
||||||
switch (aState) {
|
|
||||||
case State::PNG_DATA:
|
|
||||||
@@ -371,6 +371,14 @@
|
|
||||||
}
|
|
||||||
MOZ_CRASH("Unknown State");
|
|
||||||
});
|
|
||||||
+
|
|
||||||
+#if MOZ_BIG_ENDIAN()
|
|
||||||
+ if(res.is<TerminalState>() && res.as<TerminalState>() == TerminalState::SUCCESS) {
|
|
||||||
+ NativeEndian::swapToLittleEndianInPlace<uint32_t>((uint32_t*)(mImageData), mImageDataLength / 4);
|
|
||||||
+ }
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
+ return res;
|
|
||||||
}
|
|
||||||
|
|
||||||
LexerTransition<nsPNGDecoder::State> nsPNGDecoder::ReadPNGData(
|
|
||||||
diff -r 9cd90914846f image/decoders/nsWebPDecoder.cpp
|
|
||||||
--- a/image/decoders/nsWebPDecoder.cpp Thu Feb 27 12:57:14 2020 +0100
|
|
||||||
+++ b/image/decoders/nsWebPDecoder.cpp Fri Mar 27 13:06:18 2020 +0100
|
|
||||||
@@ -237,7 +237,12 @@
|
|
||||||
// WebP doesn't guarantee that the alpha generated matches the hint in the
|
|
||||||
// header, so we always need to claim the input is BGRA. If the output is
|
|
||||||
// BGRX, swizzling will mask off the alpha channel.
|
|
||||||
+#if MOZ_BIG_ENDIAN()
|
|
||||||
+ mBuffer.colorspace = MODE_ARGB;
|
|
||||||
+ SurfaceFormat inFormat = mFormat;
|
|
||||||
+#else
|
|
||||||
SurfaceFormat inFormat = SurfaceFormat::OS_RGBA;
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
SurfacePipeFlags pipeFlags = SurfacePipeFlags();
|
|
||||||
if (mFormat == SurfaceFormat::OS_RGBA &&
|
|
||||||
@ -1,23 +0,0 @@
|
|||||||
Problem: webGL sites are displayed in the wrong color (usually blue-ish)
|
|
||||||
Solution: Problem is with skia once again. Output of webgl seems endian-correct, but skia only
|
|
||||||
knows how to deal with little endian.
|
|
||||||
So we swizzle the output of webgl after reading it from readpixels()
|
|
||||||
Note: This does not fix all webGL sites, but is a step in the right direction
|
|
||||||
diff -r 6b017d3e9733 gfx/gl/GLContext.h
|
|
||||||
--- a/gfx/gl/GLContext.h Mon Sep 09 10:04:05 2019 +0200
|
|
||||||
+++ b/gfx/gl/GLContext.h Wed Nov 13 17:13:04 2019 +0100
|
|
||||||
@@ -1551,6 +1551,13 @@
|
|
||||||
BEFORE_GL_CALL;
|
|
||||||
mSymbols.fReadPixels(x, y, width, height, format, type, pixels);
|
|
||||||
OnSyncCall();
|
|
||||||
+#if MOZ_BIG_ENDIAN()
|
|
||||||
+ uint8_t* itr = (uint8_t*)pixels;
|
|
||||||
+ for (GLsizei i = 0; i < width * height; i++) {
|
|
||||||
+ NativeEndian::swapToLittleEndianInPlace((uint32_t*)itr, 1);
|
|
||||||
+ itr += 4;
|
|
||||||
+ }
|
|
||||||
+#endif
|
|
||||||
AFTER_GL_CALL;
|
|
||||||
mHeavyGLCallsSinceLastFlush = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,29 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# User msirringhaus@suse.de
|
|
||||||
# Date 1583738770 -3600
|
|
||||||
# Mon Mar 09 08:26:10 2020 +0100
|
|
||||||
# Node ID 34676feac1a542e409e22acf5b98735f8313b1ce
|
|
||||||
# Parent 506857dace0a08d1c9685e3ac264646590b3e27f
|
|
||||||
[mq]: mozilla-bmo998749.patch
|
|
||||||
|
|
||||||
diff -r 506857dace0a -r 34676feac1a5 gfx/2d/FilterProcessing.h
|
|
||||||
--- a/gfx/2d/FilterProcessing.h Fri Feb 28 12:31:51 2020 +0100
|
|
||||||
+++ b/gfx/2d/FilterProcessing.h Mon Mar 09 08:26:10 2020 +0100
|
|
||||||
@@ -13,10 +13,17 @@
|
|
||||||
namespace mozilla {
|
|
||||||
namespace gfx {
|
|
||||||
|
|
||||||
+#if MOZ_BIG_ENDIAN()
|
|
||||||
+const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_B = 3;
|
|
||||||
+const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_G = 2;
|
|
||||||
+const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_R = 1;
|
|
||||||
+const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_A = 0;
|
|
||||||
+#else
|
|
||||||
const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_B = 0;
|
|
||||||
const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_G = 1;
|
|
||||||
const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_R = 2;
|
|
||||||
const ptrdiff_t B8G8R8A8_COMPONENT_BYTEOFFSET_A = 3;
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
class FilterProcessing {
|
|
||||||
public:
|
|
||||||
@ -1,42 +0,0 @@
|
|||||||
From 91bb79836ee274855393bdf6ab10e24899b1b349 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Martin Liska <mliska@suse.cz>
|
|
||||||
Date: Fri, 17 May 2019 14:41:35 +0200
|
|
||||||
Subject: [PATCH] Fix top-level asm issue.
|
|
||||||
|
|
||||||
---
|
|
||||||
security/sandbox/linux/moz.build | 5 ++++-
|
|
||||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/security/sandbox/linux/moz.build b/security/sandbox/linux/moz.build
|
|
||||||
index aae85843e9f6..208368dfd189 100644
|
|
||||||
--- a/security/sandbox/linux/moz.build
|
|
||||||
+++ b/security/sandbox/linux/moz.build
|
|
||||||
@@ -61,7 +61,6 @@ UNIFIED_SOURCES += [
|
|
||||||
'../chromium/sandbox/linux/bpf_dsl/policy_compiler.cc',
|
|
||||||
'../chromium/sandbox/linux/bpf_dsl/syscall_set.cc',
|
|
||||||
'../chromium/sandbox/linux/seccomp-bpf/die.cc',
|
|
||||||
- '../chromium/sandbox/linux/seccomp-bpf/syscall.cc',
|
|
||||||
'broker/SandboxBrokerCommon.cpp',
|
|
||||||
'Sandbox.cpp',
|
|
||||||
'SandboxBrokerClient.cpp',
|
|
||||||
@@ -77,6 +76,7 @@ UNIFIED_SOURCES += [
|
|
||||||
SOURCES += [
|
|
||||||
'../chromium/base/strings/safe_sprintf.cc',
|
|
||||||
'../chromium/base/third_party/icu/icu_utf.cc',
|
|
||||||
+ '../chromium/sandbox/linux/seccomp-bpf/syscall.cc',
|
|
||||||
'../chromium/sandbox/linux/seccomp-bpf/trap.cc',
|
|
||||||
'../chromium/sandbox/linux/services/syscall_wrappers.cc',
|
|
||||||
]
|
|
||||||
@@ -96,6 +96,9 @@ if CONFIG['CC_TYPE'] in ('clang', 'gcc'):
|
|
||||||
SOURCES['../chromium/sandbox/linux/services/syscall_wrappers.cc'].flags += [
|
|
||||||
'-Wno-empty-body',
|
|
||||||
]
|
|
||||||
+ SOURCES['../chromium/sandbox/linux/seccomp-bpf/syscall.cc'].flags += [
|
|
||||||
+ '-fno-lto'
|
|
||||||
+ ]
|
|
||||||
|
|
||||||
# gcc lto likes to put the top level asm in syscall.cc in a different partition
|
|
||||||
# from the function using it which breaks the build. Work around that by
|
|
||||||
--
|
|
||||||
2.23.0
|
|
||||||
|
|
||||||
File diff suppressed because it is too large
Load Diff
@ -1,35 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# User Wolfgang Rosenauer
|
|
||||||
# Date 1558442915 -7200
|
|
||||||
# Tue May 21 14:48:35 2019 +0200
|
|
||||||
# Node ID 6bcf2dfebc1ea2aa34e5cc61152709fc8e409dc5
|
|
||||||
# Parent 4c434d19d03d5461e54fa22dfb82eaed4cd6631b
|
|
||||||
Do not use gconf for proxy settings if not running within Gnome
|
|
||||||
Index: toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
|
|
||||||
===================================================================
|
|
||||||
RCS file: /cvsroot/mozilla/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp,v
|
|
||||||
retrieving revision 1.1
|
|
||||||
|
|
||||||
diff -r 4c434d19d03d -r 6bcf2dfebc1e toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
|
|
||||||
--- a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp Wed Jun 12 17:43:18 2019 +0000
|
|
||||||
+++ b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp Tue May 21 14:48:35 2019 +0200
|
|
||||||
@@ -55,11 +55,14 @@
|
|
||||||
}
|
|
||||||
|
|
||||||
void nsUnixSystemProxySettings::Init() {
|
|
||||||
- mGSettings = do_GetService(NS_GSETTINGSSERVICE_CONTRACTID);
|
|
||||||
- if (mGSettings) {
|
|
||||||
- mGSettings->GetCollectionForSchema(
|
|
||||||
- NS_LITERAL_CSTRING("org.gnome.system.proxy"),
|
|
||||||
- getter_AddRefs(mProxySettings));
|
|
||||||
+ const char* sessionType = PR_GetEnv("DESKTOP_SESSION");
|
|
||||||
+ if (sessionType && !strcmp(sessionType, "gnome")) {
|
|
||||||
+ mGSettings = do_GetService(NS_GSETTINGSSERVICE_CONTRACTID);
|
|
||||||
+ if (mGSettings) {
|
|
||||||
+ mGSettings->GetCollectionForSchema(
|
|
||||||
+ NS_LITERAL_CSTRING("org.gnome.system.proxy"),
|
|
||||||
+ getter_AddRefs(mProxySettings));
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,54 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# User msirringhaus@suse.de
|
|
||||||
# Date 1560754926 -7200
|
|
||||||
# Mon Jun 17 09:02:06 2019 +0200
|
|
||||||
# Node ID 428161c3b9599083e1b8710eda1760f1f707ab11
|
|
||||||
# Parent fa1cf8b9cb4efdf89fe19e543fb54272b726a353
|
|
||||||
#Description: reduce the rust debuginfo level on selected architectures where
|
|
||||||
# compiling with debuginfo=2 causes the OOM killer to interrupt the build on
|
|
||||||
# launchpad builders. Initially this was only on 32 bit architectures, but with
|
|
||||||
# firefox 63 it started happening frequently on arm64 and ppc64el too.
|
|
||||||
|
|
||||||
diff --git a/build/moz.configure/toolchain.configure b/build/moz.configure/toolchain.configure
|
|
||||||
--- a/build/moz.configure/toolchain.configure
|
|
||||||
+++ b/build/moz.configure/toolchain.configure
|
|
||||||
@@ -1861,18 +1861,18 @@ imply_option('RUSTC_OPT_LEVEL', '2', whe
|
|
||||||
@depends('RUSTC_OPT_LEVEL', moz_optimize)
|
|
||||||
def rustc_opt_level(opt_level_option, moz_optimize):
|
|
||||||
if opt_level_option:
|
|
||||||
return opt_level_option[0]
|
|
||||||
else:
|
|
||||||
return '1' if moz_optimize.optimize else '0'
|
|
||||||
|
|
||||||
|
|
||||||
-@depends(rustc_opt_level, debug_rust, '--enable-debug-symbols', '--enable-frame-pointers')
|
|
||||||
-def rust_compile_flags(opt_level, debug_rust, debug_symbols, frame_pointers):
|
|
||||||
+@depends(rustc_opt_level, debug_rust, '--enable-debug-symbols', '--enable-frame-pointers', host)
|
|
||||||
+def rust_compile_flags(opt_level, debug_rust, debug_symbols, frame_pointers, host):
|
|
||||||
# Cargo currently supports only two interesting profiles for building:
|
|
||||||
# development and release. Those map (roughly) to --enable-debug and
|
|
||||||
# --disable-debug in Gecko, respectively.
|
|
||||||
#
|
|
||||||
# But we'd also like to support an additional axis of control for
|
|
||||||
# optimization level. Since Cargo only supports 2 profiles, we're in
|
|
||||||
# a bit of a bind.
|
|
||||||
#
|
|
||||||
@@ -1885,16 +1885,18 @@ def rust_compile_flags(opt_level, debug_
|
|
||||||
|
|
||||||
# opt-level=0 implies -C debug-assertions, which may not be desired
|
|
||||||
# unless Rust debugging is enabled.
|
|
||||||
if opt_level == '0' and not debug_rust:
|
|
||||||
debug_assertions = False
|
|
||||||
|
|
||||||
if debug_symbols:
|
|
||||||
debug_info = '2'
|
|
||||||
+# if host.bitness == 32 or host.cpu == 'aarch64' or host.cpu == 'ppc64': # Just reduce debug_info for all archs
|
|
||||||
+ debug_info = '1'
|
|
||||||
|
|
||||||
opts = []
|
|
||||||
|
|
||||||
if opt_level is not None:
|
|
||||||
opts.append('opt-level=%s' % opt_level)
|
|
||||||
if debug_assertions is not None:
|
|
||||||
opts.append('debug-assertions=%s' %
|
|
||||||
('yes' if debug_assertions else 'no'))
|
|
||||||
@ -1,16 +0,0 @@
|
|||||||
From: meissner@suse.com
|
|
||||||
Subject: allow Firefox to access addtional process information
|
|
||||||
Reference: http://bugzilla.suse.com/show_bug.cgi?id=1167132
|
|
||||||
|
|
||||||
Index: firefox-74.0/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp
|
|
||||||
===================================================================
|
|
||||||
--- firefox-74.0.orig/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp
|
|
||||||
+++ firefox-74.0/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp
|
|
||||||
@@ -276,6 +276,7 @@ SandboxBrokerPolicyFactory::SandboxBroke
|
|
||||||
|
|
||||||
// Read permissions
|
|
||||||
policy->AddPath(rdonly, "/dev/urandom");
|
|
||||||
+ policy->AddPath(rdonly, "/proc/sys/crypto/fips_enabled");
|
|
||||||
policy->AddPath(rdonly, "/proc/cpuinfo");
|
|
||||||
policy->AddPath(rdonly, "/proc/meminfo");
|
|
||||||
policy->AddDir(rdonly, "/sys/devices/cpu");
|
|
||||||
@ -1,18 +0,0 @@
|
|||||||
mozilla-nongnome-proxies.patch
|
|
||||||
mozilla-kde.patch
|
|
||||||
mozilla-bmo1463035.patch
|
|
||||||
mozilla-sandbox-fips.patch
|
|
||||||
mozilla-reduce-rust-debuginfo.patch
|
|
||||||
mozilla-bmo1005535.patch
|
|
||||||
mozilla-bmo1568145.patch
|
|
||||||
mozilla-bmo1504834-part1.patch
|
|
||||||
mozilla-bmo1504834-part2.patch
|
|
||||||
mozilla-bmo1504834-part3.patch
|
|
||||||
mozilla-bmo1554971.patch
|
|
||||||
mozilla-bmo1512162.patch
|
|
||||||
mozilla-fix-top-level-asm.patch
|
|
||||||
mozilla-bmo1504834-part4.patch
|
|
||||||
mozilla-bmo849632.patch
|
|
||||||
mozilla-bmo1602730.patch
|
|
||||||
mozilla-bmo998749.patch
|
|
||||||
mozilla-bmo1626236.patch
|
|
||||||
@ -1,13 +0,0 @@
|
|||||||
--- a/browser/base/content/browser.js
|
|
||||||
+++ b/browser/base/content/browser.js
|
|
||||||
@@ -2045,10 +2045,6 @@
|
|
||||||
MenuTouchModeObserver.init();
|
|
||||||
}
|
|
||||||
|
|
||||||
- if (AppConstants.MOZ_DATA_REPORTING) {
|
|
||||||
- gDataNotificationInfoBar.init();
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
if (!AppConstants.MOZILLA_OFFICIAL) {
|
|
||||||
DevelopmentHelpers.init();
|
|
||||||
}
|
|
||||||
@ -1,16 +0,0 @@
|
|||||||
--- firefox-60.0.bak/browser/confvars.sh
|
|
||||||
+++ firefox-60.0/browser/confvars.sh
|
|
||||||
@@ -62,3 +62,13 @@
|
|
||||||
|
|
||||||
# Include the DevTools client, not just the server (which is the default)
|
|
||||||
MOZ_DEVTOOLS=all
|
|
||||||
+
|
|
||||||
+# Reduce data sharing with Mozilla
|
|
||||||
+MOZ_DATA_REPORTING=0
|
|
||||||
+MOZ_TELEMETRY_REPORTING=0
|
|
||||||
+MOZ_CRASHREPORTER=0
|
|
||||||
+MOZ_SERVICES_HEALTHREPORT=0
|
|
||||||
+MOZ_PAY=0
|
|
||||||
+MOZ_SERVICES_METRICS=0
|
|
||||||
+MOZ_LOGGING=0
|
|
||||||
+
|
|
||||||
@ -1,67 +0,0 @@
|
|||||||
pref("browser.shell.checkDefaultBrowser",false);
|
|
||||||
pref("browser.startup.page",0);
|
|
||||||
pref("browser.urlbar.userMadeSearchSuggestionsChoice",true);
|
|
||||||
pref("browser.download.panel.shown",true);
|
|
||||||
pref("browser.tabs.warnOnClose",false);
|
|
||||||
pref("network.captive-portal-service.enabled",false);
|
|
||||||
pref("browser.newtabpage.introShown",true);
|
|
||||||
pref("startup.homepage_welcome_url","about:blank");
|
|
||||||
pref("datareporting.healthreport.uploadEnabled",false);
|
|
||||||
pref("general.warnOnAboutConfig",false);
|
|
||||||
pref("network.http.speculative-parallel-limit",0);
|
|
||||||
pref("network.prefetch-next",false);
|
|
||||||
pref("extensions.blocklist.enabled",false);
|
|
||||||
pref("middlemouse.contentLoadURL",false);
|
|
||||||
pref("browser.formfill.enable",false);
|
|
||||||
pref("urlclassifier.malwareTable","");
|
|
||||||
pref("urlclassifier.phishTable","");
|
|
||||||
pref("urlclassifier.downloadBlockTable","");
|
|
||||||
pref("browser.safebrowsing.phishing.enabled",false);
|
|
||||||
pref("browser.safebrowsing.malware.enabled",false);
|
|
||||||
pref("browser.safebrowsing.downloads.enabled",false);
|
|
||||||
pref("browser.safebrowsing.downloads.remote.enabled",false);
|
|
||||||
pref("browser.safebrowsing.downloads.remote.url","");
|
|
||||||
pref("browser.safebrowsing.downloads.remote.block_dangerous",false);
|
|
||||||
pref("browser.safebrowsing.downloads.remote.block_dangerous_host",false);
|
|
||||||
pref("browser.safebrowsing.downloads.remote.block_potentially_unwanted",false);
|
|
||||||
pref("browser.safebrowsing.downloads.remote.block_uncommon",false);
|
|
||||||
pref("browser.safebrowsing.provider.google.lists","");
|
|
||||||
pref("browser.safebrowsing.provider.google.updateURL","");
|
|
||||||
pref("browser.safebrowsing.provider.google.gethashURL","");
|
|
||||||
pref("browser.safebrowsing.provider.google.reportURL","");
|
|
||||||
pref("browser.safebrowsing.provider.google4.lists","");
|
|
||||||
pref("browser.safebrowsing.provider.google4.updateURL","");
|
|
||||||
pref("browser.safebrowsing.provider.google4.gethashURL","");
|
|
||||||
pref("browser.safebrowsing.provider.google4.reportURL","");
|
|
||||||
pref("browser.safebrowsing.reportPhishMistakeURL","");
|
|
||||||
pref("browser.safebrowsing.reportPhishURL","");
|
|
||||||
pref("browser.safebrowsing.reportMalwareMistakeURL","");
|
|
||||||
pref("browser.safebrowsing.blockedURIs.enabled",false);
|
|
||||||
pref("browser.safebrowsing.provider.mozilla.lists","");
|
|
||||||
pref("browser.safebrowsing.provider.mozilla.updateURL","");
|
|
||||||
pref("browser.safebrowsing.provider.mozilla.gethashURL","");
|
|
||||||
//
|
|
||||||
pref("browser.bookmarks.showMobileBookmarks",false);
|
|
||||||
pref("extensions.pocket.enabled",false);
|
|
||||||
// disable telemetry
|
|
||||||
pref("toolkit.telemetry.enabled",false);
|
|
||||||
pref("toolkit.telemetry.server","");
|
|
||||||
pref("toolkit.telemetry.unified",false);
|
|
||||||
pref("toolkit.telemetry.archive.enabled",false);
|
|
||||||
pref("toolkit.telemetry.cachedClientID","");
|
|
||||||
pref("toolkit.telemetry.newProfilePing.enabled",false);
|
|
||||||
pref("toolkit.telemetry.shutdownPingSender.enabled",false);
|
|
||||||
pref("toolkit.telemetry.updatePing.enabled",false);
|
|
||||||
pref("toolkit.telemetry.bhrPing.enabled",false);
|
|
||||||
pref("toolkit.telemetry.firstShutdownPing.enabled",false);
|
|
||||||
pref("experiments.enabled",false);
|
|
||||||
pref("experiments.manifest.uri","");
|
|
||||||
pref("experiments.supported",false);
|
|
||||||
pref("experiments.activeExperiment",false);
|
|
||||||
// disable health report
|
|
||||||
pref("datareporting.healthreport.about.reportUrl","");
|
|
||||||
pref("datdatareporting.healthreport.infoURL","");
|
|
||||||
pref("datareporting.policy.dataSubmissionEnabled",false);
|
|
||||||
// disable crash reports
|
|
||||||
pref("breakpad.reportURL","");
|
|
||||||
pref("pdfjs.disabled", true);
|
|
||||||
@ -1,2 +0,0 @@
|
|||||||
firefox-60-disable-telemetry.patch
|
|
||||||
firefox-60-disable-data-sharing-infobar.patch
|
|
||||||
@ -1,359 +0,0 @@
|
|||||||
diff --git a/Cargo.lock b/Cargo.lock
|
|
||||||
index b1fca7cbca..888dd6d3fd 100644
|
|
||||||
--- a/Cargo.lock
|
|
||||||
+++ b/Cargo.lock
|
|
||||||
@@ -111,25 +111,11 @@ dependencies = [
|
|
||||||
"bitflags",
|
|
||||||
]
|
|
||||||
|
|
||||||
-[[package]]
|
|
||||||
-name = "audio_thread_priority"
|
|
||||||
-version = "0.22.1"
|
|
||||||
-source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
-checksum = "f8fba1500e466a39dd3faa5aed20a50dfe0aa1b905264a453bbe9f49508994cc"
|
|
||||||
-dependencies = [
|
|
||||||
- "cfg-if",
|
|
||||||
- "dbus",
|
|
||||||
- "libc",
|
|
||||||
- "log",
|
|
||||||
- "mach",
|
|
||||||
- "winapi 0.3.7",
|
|
||||||
-]
|
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "audioipc"
|
|
||||||
version = "0.2.5"
|
|
||||||
dependencies = [
|
|
||||||
- "audio_thread_priority",
|
|
||||||
"bincode",
|
|
||||||
"bytes 0.4.9",
|
|
||||||
"cc",
|
|
||||||
@@ -156,7 +142,6 @@ dependencies = [
|
|
||||||
name = "audioipc-client"
|
|
||||||
version = "0.4.0"
|
|
||||||
dependencies = [
|
|
||||||
- "audio_thread_priority",
|
|
||||||
"audioipc",
|
|
||||||
"cubeb-backend",
|
|
||||||
"futures 0.1.29",
|
|
||||||
@@ -169,7 +154,6 @@ dependencies = [
|
|
||||||
name = "audioipc-server"
|
|
||||||
version = "0.2.3"
|
|
||||||
dependencies = [
|
|
||||||
- "audio_thread_priority",
|
|
||||||
"audioipc",
|
|
||||||
"cubeb-core",
|
|
||||||
"error-chain",
|
|
||||||
@@ -1890,7 +1874,6 @@ dependencies = [
|
|
||||||
name = "gkrust-shared"
|
|
||||||
version = "0.1.0"
|
|
||||||
dependencies = [
|
|
||||||
- "audio_thread_priority",
|
|
||||||
"audioipc-client",
|
|
||||||
"audioipc-server",
|
|
||||||
"authenticator",
|
|
||||||
diff --git a/dom/ipc/ContentChild.cpp b/dom/ipc/ContentChild.cpp
|
|
||||||
index 2fe91affcd..ae835b2c34 100644
|
|
||||||
--- a/dom/ipc/ContentChild.cpp
|
|
||||||
+++ b/dom/ipc/ContentChild.cpp
|
|
||||||
@@ -111,9 +111,7 @@
|
|
||||||
#include "GMPServiceChild.h"
|
|
||||||
#include "nsIStringBundle.h"
|
|
||||||
#include "Geolocation.h"
|
|
||||||
-#include "audio_thread_priority.h"
|
|
||||||
#include "nsIConsoleService.h"
|
|
||||||
-#include "audio_thread_priority.h"
|
|
||||||
#include "nsIURIMutator.h"
|
|
||||||
#include "nsIInputStreamChannel.h"
|
|
||||||
#include "nsFocusManager.h"
|
|
||||||
@@ -1624,9 +1622,7 @@ mozilla::ipc::IPCResult ContentChild::RecvSetProcessSandbox(
|
|
||||||
} else {
|
|
||||||
// Pre-start audio before sandboxing; see bug 1443612.
|
|
||||||
if (StaticPrefs::media_cubeb_sandbox()) {
|
|
||||||
- if (atp_set_real_time_limit(0, 48000)) {
|
|
||||||
NS_WARNING("could not set real-time limit at process startup");
|
|
||||||
- }
|
|
||||||
InstallSoftRealTimeLimitHandler();
|
|
||||||
} else {
|
|
||||||
Unused << CubebUtils::GetCubebContext();
|
|
||||||
diff --git a/dom/media/GraphRunner.cpp b/dom/media/GraphRunner.cpp
|
|
||||||
index 6ea8f2e9ca..51dba21d71 100644
|
|
||||||
--- a/dom/media/GraphRunner.cpp
|
|
||||||
+++ b/dom/media/GraphRunner.cpp
|
|
||||||
@@ -13,7 +13,6 @@
|
|
||||||
#include "nsISupportsPriority.h"
|
|
||||||
#include "prthread.h"
|
|
||||||
#include "Tracing.h"
|
|
||||||
-#include "audio_thread_priority.h"
|
|
||||||
|
|
||||||
namespace mozilla {
|
|
||||||
|
|
||||||
@@ -95,8 +94,6 @@ auto GraphRunner::OneIteration(GraphTime aStateEnd, GraphTime aIterationEnd,
|
|
||||||
}
|
|
||||||
|
|
||||||
NS_IMETHODIMP GraphRunner::Run() {
|
|
||||||
- atp_handle* handle =
|
|
||||||
- atp_promote_current_thread_to_real_time(0, mGraph->GraphRate());
|
|
||||||
|
|
||||||
nsCOMPtr<nsIThreadInternal> threadInternal = do_QueryInterface(mThread);
|
|
||||||
threadInternal->SetObserver(mGraph);
|
|
||||||
@@ -119,9 +116,6 @@ NS_IMETHODIMP GraphRunner::Run() {
|
|
||||||
mMonitor.Notify();
|
|
||||||
}
|
|
||||||
|
|
||||||
- if (handle) {
|
|
||||||
- atp_demote_current_thread_from_real_time(handle);
|
|
||||||
- }
|
|
||||||
|
|
||||||
return NS_OK;
|
|
||||||
}
|
|
||||||
diff --git a/dom/media/UnderrunHandlerLinux.cpp b/dom/media/UnderrunHandlerLinux.cpp
|
|
||||||
index af5c84538e..9fecb5ebd2 100644
|
|
||||||
--- a/dom/media/UnderrunHandlerLinux.cpp
|
|
||||||
+++ b/dom/media/UnderrunHandlerLinux.cpp
|
|
||||||
@@ -9,7 +9,6 @@
|
|
||||||
|
|
||||||
#include <mozilla/Sprintf.h>
|
|
||||||
#include <mozilla/Atomics.h>
|
|
||||||
-#include "audio_thread_priority.h"
|
|
||||||
|
|
||||||
namespace mozilla {
|
|
||||||
|
|
||||||
@@ -57,21 +56,8 @@ void InstallSoftRealTimeLimitHandler() {
|
|
||||||
}
|
|
||||||
|
|
||||||
void DemoteThreadFromRealTime() {
|
|
||||||
- atp_thread_info* info = atp_get_current_thread_info();
|
|
||||||
- if (!info) {
|
|
||||||
NS_WARNING("Could not get current thread info when demoting thread.");
|
|
||||||
return;
|
|
||||||
- }
|
|
||||||
- int rv = atp_demote_thread_from_real_time(info);
|
|
||||||
- if (rv) {
|
|
||||||
- NS_WARNING("Could not demote thread from real-time.");
|
|
||||||
- return;
|
|
||||||
- }
|
|
||||||
- rv = atp_free_thread_info(info);
|
|
||||||
- if (rv) {
|
|
||||||
- NS_WARNING("Could not free atp_thread_info struct");
|
|
||||||
- }
|
|
||||||
- gRealtimeLimitReached = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
} // namespace mozilla
|
|
||||||
diff --git a/dom/media/moz.build b/dom/media/moz.build
|
|
||||||
index c8dc9fe2d1..ae43f16fa3 100644
|
|
||||||
--- a/dom/media/moz.build
|
|
||||||
+++ b/dom/media/moz.build
|
|
||||||
@@ -100,7 +100,6 @@ XPIDL_SOURCES += [
|
|
||||||
XPIDL_MODULE = 'dom_media'
|
|
||||||
|
|
||||||
EXPORTS += [
|
|
||||||
- '../../third_party/rust/audio_thread_priority/audio_thread_priority.h',
|
|
||||||
'ADTSDecoder.h',
|
|
||||||
'ADTSDemuxer.h',
|
|
||||||
'AsyncLogger.h',
|
|
||||||
diff --git a/media/audioipc/audioipc/Cargo.toml b/media/audioipc/audioipc/Cargo.toml
|
|
||||||
index dfffa97f24..d9d2cf7d95 100644
|
|
||||||
--- a/media/audioipc/audioipc/Cargo.toml
|
|
||||||
+++ b/media/audioipc/audioipc/Cargo.toml
|
|
||||||
@@ -19,7 +19,6 @@ serde = "1"
|
|
||||||
serde_derive = "1"
|
|
||||||
tokio = "0.1"
|
|
||||||
tokio-io = "0.1"
|
|
||||||
-audio_thread_priority = "0.22"
|
|
||||||
|
|
||||||
[target.'cfg(unix)'.dependencies]
|
|
||||||
iovec = "0.1"
|
|
||||||
diff --git a/media/audioipc/audioipc/src/messages.rs b/media/audioipc/audioipc/src/messages.rs
|
|
||||||
index 9cda962e0e..37e6119b74 100644
|
|
||||||
--- a/media/audioipc/audioipc/src/messages.rs
|
|
||||||
+++ b/media/audioipc/audioipc/src/messages.rs
|
|
||||||
@@ -5,8 +5,6 @@
|
|
||||||
|
|
||||||
use crate::PlatformHandle;
|
|
||||||
use crate::PlatformHandleType;
|
|
||||||
-#[cfg(target_os = "linux")]
|
|
||||||
-use audio_thread_priority::RtPriorityThreadInfo;
|
|
||||||
use cubeb::{self, ffi};
|
|
||||||
use std::ffi::{CStr, CString};
|
|
||||||
use std::os::raw::{c_char, c_int, c_uint};
|
|
||||||
@@ -211,8 +209,6 @@ pub enum ServerMessage {
|
|
||||||
StreamGetCurrentDevice(usize),
|
|
||||||
StreamRegisterDeviceChangeCallback(usize, bool),
|
|
||||||
|
|
||||||
- #[cfg(target_os = "linux")]
|
|
||||||
- PromoteThreadToRealTime([u8; std::mem::size_of::<RtPriorityThreadInfo>()]),
|
|
||||||
}
|
|
||||||
|
|
||||||
// Server -> Client messages.
|
|
||||||
@@ -243,8 +239,6 @@ pub enum ClientMessage {
|
|
||||||
StreamCurrentDevice(Device),
|
|
||||||
StreamRegisterDeviceChangeCallback,
|
|
||||||
|
|
||||||
- #[cfg(target_os = "linux")]
|
|
||||||
- ThreadPromoted,
|
|
||||||
|
|
||||||
Error(c_int),
|
|
||||||
}
|
|
||||||
diff --git a/media/audioipc/client/Cargo.toml b/media/audioipc/client/Cargo.toml
|
|
||||||
index 4a55c0162e..2fbccc05df 100644
|
|
||||||
--- a/media/audioipc/client/Cargo.toml
|
|
||||||
+++ b/media/audioipc/client/Cargo.toml
|
|
||||||
@@ -9,7 +9,6 @@ description = "Cubeb Backend for talking to remote cubeb server."
|
|
||||||
edition = "2018"
|
|
||||||
|
|
||||||
[dependencies]
|
|
||||||
-audio_thread_priority = "0.22"
|
|
||||||
audioipc = { path="../audioipc" }
|
|
||||||
cubeb-backend = "0.7"
|
|
||||||
futures = { version="0.1.18", default-features=false, features=["use_std"] }
|
|
||||||
diff --git a/media/audioipc/client/src/context.rs b/media/audioipc/client/src/context.rs
|
|
||||||
index 6b13900c54..87323508b8 100644
|
|
||||||
--- a/media/audioipc/client/src/context.rs
|
|
||||||
+++ b/media/audioipc/client/src/context.rs
|
|
||||||
@@ -6,10 +6,6 @@
|
|
||||||
use crate::stream;
|
|
||||||
use crate::{assert_not_in_callback, run_in_callback};
|
|
||||||
use crate::{ClientStream, AUDIOIPC_INIT_PARAMS};
|
|
||||||
-#[cfg(target_os = "linux")]
|
|
||||||
-use audio_thread_priority::get_current_thread_info;
|
|
||||||
-#[cfg(not(target_os = "linux"))]
|
|
||||||
-use audio_thread_priority::promote_current_thread_to_real_time;
|
|
||||||
use audioipc::codec::LengthDelimitedCodec;
|
|
||||||
use audioipc::frame::{framed, Framed};
|
|
||||||
use audioipc::platformhandle_passing::{framed_with_platformhandles, FramedWithPlatformHandles};
|
|
||||||
@@ -72,31 +68,6 @@ impl ClientContext {
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
-#[cfg(target_os = "linux")]
|
|
||||||
-fn promote_thread(rpc: &rpc::ClientProxy<ServerMessage, ClientMessage>) {
|
|
||||||
- match get_current_thread_info() {
|
|
||||||
- Ok(info) => {
|
|
||||||
- let bytes = info.serialize();
|
|
||||||
- // Don't wait for the response, this is on the callback thread, which must not block.
|
|
||||||
- rpc.call(ServerMessage::PromoteThreadToRealTime(bytes));
|
|
||||||
- }
|
|
||||||
- Err(_) => {
|
|
||||||
- warn!("Could not remotely promote thread to RT.");
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
-}
|
|
||||||
-
|
|
||||||
-#[cfg(not(target_os = "linux"))]
|
|
||||||
-fn promote_thread(_rpc: &rpc::ClientProxy<ServerMessage, ClientMessage>) {
|
|
||||||
- match promote_current_thread_to_real_time(0, 48000) {
|
|
||||||
- Ok(_) => {
|
|
||||||
- info!("Audio thread promoted to real-time.");
|
|
||||||
- }
|
|
||||||
- Err(_) => {
|
|
||||||
- warn!("Could not promote thread to real-time.");
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
-}
|
|
||||||
|
|
||||||
fn register_thread(callback: Option<extern "C" fn(*const ::std::os::raw::c_char)>) {
|
|
||||||
if let Some(func) = callback {
|
|
||||||
@@ -116,7 +87,6 @@ fn promote_and_register_thread(
|
|
||||||
rpc: &rpc::ClientProxy<ServerMessage, ClientMessage>,
|
|
||||||
callback: Option<extern "C" fn(*const ::std::os::raw::c_char)>,
|
|
||||||
) {
|
|
||||||
- promote_thread(rpc);
|
|
||||||
register_thread(callback);
|
|
||||||
}
|
|
||||||
|
|
||||||
diff --git a/media/audioipc/server/Cargo.toml b/media/audioipc/server/Cargo.toml
|
|
||||||
index 99afe54939..99a3440d33 100644
|
|
||||||
--- a/media/audioipc/server/Cargo.toml
|
|
||||||
+++ b/media/audioipc/server/Cargo.toml
|
|
||||||
@@ -9,7 +9,6 @@ description = "Remote cubeb server"
|
|
||||||
edition = "2018"
|
|
||||||
|
|
||||||
[dependencies]
|
|
||||||
-audio_thread_priority = "0.22"
|
|
||||||
audioipc = { path = "../audioipc" }
|
|
||||||
cubeb-core = "0.7.0"
|
|
||||||
futures = "0.1.29"
|
|
||||||
diff --git a/media/audioipc/server/src/lib.rs b/media/audioipc/server/src/lib.rs
|
|
||||||
index 4d49c8fc08..3c44ee3def 100644
|
|
||||||
--- a/media/audioipc/server/src/lib.rs
|
|
||||||
+++ b/media/audioipc/server/src/lib.rs
|
|
||||||
@@ -9,7 +9,6 @@ extern crate error_chain;
|
|
||||||
#[macro_use]
|
|
||||||
extern crate log;
|
|
||||||
|
|
||||||
-use audio_thread_priority::promote_current_thread_to_real_time;
|
|
||||||
use audioipc::core;
|
|
||||||
use audioipc::platformhandle_passing::framed_with_platformhandles;
|
|
||||||
use audioipc::rpc;
|
|
||||||
@@ -64,12 +63,6 @@ fn run() -> Result<ServerWrapper> {
|
|
||||||
let callback_thread = core::spawn_thread(
|
|
||||||
"AudioIPC Callback RPC",
|
|
||||||
|| {
|
|
||||||
- match promote_current_thread_to_real_time(0, 48000) {
|
|
||||||
- Ok(_) => {}
|
|
||||||
- Err(_) => {
|
|
||||||
- debug!("Failed to promote audio callback thread to real-time.");
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
trace!("Starting up cubeb audio callback event loop thread...");
|
|
||||||
Ok(())
|
|
||||||
},
|
|
||||||
diff --git a/media/audioipc/server/src/server.rs b/media/audioipc/server/src/server.rs
|
|
||||||
index f07432f71f..b90e9d9be7 100644
|
|
||||||
--- a/media/audioipc/server/src/server.rs
|
|
||||||
+++ b/media/audioipc/server/src/server.rs
|
|
||||||
@@ -3,8 +3,6 @@
|
|
||||||
// This program is made available under an ISC-style license. See the
|
|
||||||
// accompanying file LICENSE for details
|
|
||||||
|
|
||||||
-#[cfg(target_os = "linux")]
|
|
||||||
-use audio_thread_priority::{promote_thread_to_real_time, RtPriorityThreadInfo};
|
|
||||||
use audioipc;
|
|
||||||
use audioipc::codec::LengthDelimitedCodec;
|
|
||||||
use audioipc::frame::{framed, Framed};
|
|
||||||
@@ -636,19 +634,6 @@ impl CubebServer {
|
|
||||||
)
|
|
||||||
.unwrap_or_else(error),
|
|
||||||
|
|
||||||
- #[cfg(target_os = "linux")]
|
|
||||||
- ServerMessage::PromoteThreadToRealTime(thread_info) => {
|
|
||||||
- let info = RtPriorityThreadInfo::deserialize(thread_info);
|
|
||||||
- match promote_thread_to_real_time(info, 0, 48000) {
|
|
||||||
- Ok(_) => {
|
|
||||||
- info!("Promotion of content process thread to real-time OK");
|
|
||||||
- }
|
|
||||||
- Err(_) => {
|
|
||||||
- warn!("Promotion of content process thread to real-time error");
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
- ClientMessage::ThreadPromoted
|
|
||||||
- }
|
|
||||||
};
|
|
||||||
|
|
||||||
trace!("process_msg: req={:?}, resp={:?}", msg, resp);
|
|
||||||
diff --git a/toolkit/library/rust/shared/Cargo.toml b/toolkit/library/rust/shared/Cargo.toml
|
|
||||||
index 5fdb0eb2c0..d9bc0346cb 100644
|
|
||||||
--- a/toolkit/library/rust/shared/Cargo.toml
|
|
||||||
+++ b/toolkit/library/rust/shared/Cargo.toml
|
|
||||||
@@ -41,7 +41,6 @@ storage = { path = "../../../../storage/rust" }
|
|
||||||
bookmark_sync = { path = "../../../components/places/bookmark_sync", optional = true }
|
|
||||||
shift_or_euc_c = "0.1.0"
|
|
||||||
chardetng_c = "0.1.1"
|
|
||||||
-audio_thread_priority = "0.22.1"
|
|
||||||
mdns_service = { path="../../../../media/mtransport/mdns_service", optional = true }
|
|
||||||
neqo_glue = { path = "../../../../netwerk/socket/neqo_glue" }
|
|
||||||
rlbox_lucet_sandbox = { version = "0.1.0", optional = true }
|
|
||||||
diff --git a/toolkit/library/rust/shared/lib.rs b/toolkit/library/rust/shared/lib.rs
|
|
||||||
index 3285383a11..d228bc9bad 100644
|
|
||||||
--- a/toolkit/library/rust/shared/lib.rs
|
|
||||||
+++ b/toolkit/library/rust/shared/lib.rs
|
|
||||||
@@ -51,7 +51,6 @@ extern crate xpcom;
|
|
||||||
#[cfg(feature = "new_xulstore")]
|
|
||||||
extern crate xulstore;
|
|
||||||
|
|
||||||
-extern crate audio_thread_priority;
|
|
||||||
|
|
||||||
#[cfg(not(target_os = "android"))]
|
|
||||||
extern crate webext_storage_bridge;
|
|
||||||
@ -1,10 +0,0 @@
|
|||||||
pref("app.update.enabled", false);
|
|
||||||
pref("app.update.autoInstallEnabled", false);
|
|
||||||
pref("browser.display.use_system_colors", true);
|
|
||||||
pref("intl.locale.matchOS", true);
|
|
||||||
pref("intl.locale.requested", "");
|
|
||||||
pref("general.useragent.locale", "chrome://global/locale/intl.properties");
|
|
||||||
pref("mail.shell.checkDefaultClient", false);
|
|
||||||
# Do not switch to Smart Folders after upgrade to 3.0b4
|
|
||||||
pref("mail.folder.views.version", "1");
|
|
||||||
pref("extensions.autoDisableScopes", 0);
|
|
||||||
@ -1,10 +0,0 @@
|
|||||||
--- a/build/pgo/profileserver.py 2019-09-30 20:58:31.169527743 +0700
|
|
||||||
+++ b/build/pgo/profileserver.py 2019-09-30 21:02:07.964185254 +0700
|
|
||||||
@@ -137,7 +137,6 @@
|
|
||||||
env=env,
|
|
||||||
process_args=process_args)
|
|
||||||
runner.start(debug_args=debug_args, interactive=interactive)
|
|
||||||
- ret = runner.wait()
|
|
||||||
httpd.stop()
|
|
||||||
if ret:
|
|
||||||
print("Firefox exited with code %d during profiling" % ret)
|
|
||||||
@ -1,43 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
|
||||||
<pkgmetadata>
|
|
||||||
<maintainer type="project">
|
|
||||||
<email>mozilla@gentoo.org</email>
|
|
||||||
<name>Gentoo Mozilla Team</name>
|
|
||||||
</maintainer>
|
|
||||||
<use>
|
|
||||||
<flag name="bindist">Disable official Firefox/Thunderbird branding (icons, name) which
|
|
||||||
are not binary-redistributable according to upstream.</flag>
|
|
||||||
<flag name="clang">Use Clang compiler instead of GCC</flag>
|
|
||||||
<flag name="cross-lto">Enable ThinLTO across C++ and Rust code</flag>
|
|
||||||
<flag name="custom-optimization">Build with user-specified compiler optimizations
|
|
||||||
(-Os, -O0, -O1, -O2, -O3) from CFLAGS (unsupported)</flag>
|
|
||||||
<flag name="eme-free">Disable EME (DRM plugin) cabability at build time</flag>
|
|
||||||
<flag name="gmp-autoupdate">Allow Gecko Media Plugins (binary blobs) to be automatically
|
|
||||||
downloaded and kept up-to-date in user profiles</flag>
|
|
||||||
<flag name="lightning">Enable app-global calendar support
|
|
||||||
(note 38.0 and above bundles calendar support when this flag is off)</flag>
|
|
||||||
<flag name="lto">Enable Link Time Optimization (LTO). Requires Gold linker when using GCC
|
|
||||||
or LDD linker when using Clang</flag>
|
|
||||||
<flag name="pgo">Add support for profile-guided optimization using gcc-4.5,
|
|
||||||
for faster binaries. This option will double the compile time.</flag>
|
|
||||||
<flag name="system-av1">Use the system-wide <pkg>media-libs/dav1d</pkg>
|
|
||||||
and <pkg>media-libs/libaom</pkg> library instead of bundled.</flag>
|
|
||||||
<flag name="system-harfbuzz">Use the system-wide <pkg>media-libs/harfbuzz</pkg>
|
|
||||||
and <pkg>media-gfx/graphite2</pkg> instead of bundled.</flag>
|
|
||||||
<flag name="system-icu">Use the system-wide <pkg>dev-libs/icu</pkg>
|
|
||||||
instead of bundled.</flag>
|
|
||||||
<flag name="system-jpeg">Use the system-wide <pkg>media-libs/libjpeg-turbo</pkg>
|
|
||||||
instead of bundled.</flag>
|
|
||||||
<flag name="system-libevent">Use the system-wide <pkg>dev-libs/libevent</pkg>
|
|
||||||
instead of bundled.</flag>
|
|
||||||
<flag name="system-libvpx">Use the system-wide <pkg>media-libs/libvpx</pkg>
|
|
||||||
instead of bundled.</flag>
|
|
||||||
<flag name="system-sqlite">Use the system-wide <pkg>dev-db/sqlite</pkg>
|
|
||||||
installation with secure-delete enabled</flag>
|
|
||||||
<flag name="system-webp">Use the system-wide <pkg>media-libs/libwebp</pkg>
|
|
||||||
instead of bundled.</flag>
|
|
||||||
<flag name="thinlto">Enable ThinLTO. Requires LDD linker when using Clang</flag>
|
|
||||||
|
|
||||||
</use>
|
|
||||||
</pkgmetadata>
|
|
||||||
@ -1,915 +0,0 @@
|
|||||||
# Copyright 1999-2020 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI=6
|
|
||||||
VIRTUALX_REQUIRED="pgo"
|
|
||||||
WANT_AUTOCONF="2.1"
|
|
||||||
MOZ_ESR=""
|
|
||||||
MOZ_LIGHTNING_VER="6.2.5"
|
|
||||||
MOZ_LIGHTNING_GDATA_VER="4.4.1"
|
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_{7..9} )
|
|
||||||
PYTHON_REQ_USE='ncurses,sqlite,ssl,threads(+)'
|
|
||||||
|
|
||||||
# This list can be updated using scripts/get_langs.sh from the mozilla overlay
|
|
||||||
MOZ_LANGS=(de en en-GB en-US ru)
|
|
||||||
|
|
||||||
# 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*}" # Handle rc for SRC_URI
|
|
||||||
|
|
||||||
if [[ ${MOZ_ESR} == 1 ]] ; then
|
|
||||||
# ESR releases have slightly different version numbers
|
|
||||||
MOZ_PV="${MOZ_PV}esr"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Patches
|
|
||||||
PATCHFF="firefox-68.0-patches-15"
|
|
||||||
|
|
||||||
MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/releases"
|
|
||||||
MOZ_SRC_URI="${MOZ_HTTP_URI}/${MOZ_PV}/source/${PN}-${MOZ_PV}.source.tar.xz"
|
|
||||||
|
|
||||||
if [[ "${PV}" == *_rc* ]]; then
|
|
||||||
MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
|
|
||||||
MOZ_LANGPACK_PREFIX="linux-i686/xpi/"
|
|
||||||
MOZ_SRC_URI="${MOZ_HTTP_URI}/source/${PN}-${MOZ_PV}.source.tar.xz -> $P.tar.xz"
|
|
||||||
fi
|
|
||||||
|
|
||||||
LLVM_MAX_SLOT=11
|
|
||||||
MOZCONFIG_OPTIONAL_JIT=1
|
|
||||||
|
|
||||||
inherit check-reqs eapi7-ver flag-o-matic toolchain-funcs eutils \
|
|
||||||
gnome2-utils llvm mozcoreconf-v6 pax-utils xdg-utils \
|
|
||||||
autotools mozlinguas-v2 multiprocessing virtualx
|
|
||||||
|
|
||||||
DESCRIPTION="Thunderbird Mail Client"
|
|
||||||
HOMEPAGE="https://www.mozilla.org/thunderbird"
|
|
||||||
|
|
||||||
KEYWORDS="amd64 ~arm64 ~ppc64 x86 ~amd64-linux ~x86-linux"
|
|
||||||
|
|
||||||
SLOT="0"
|
|
||||||
LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
|
|
||||||
IUSE="bindist clang cpu_flags_x86_avx2 dbus debug eme-free
|
|
||||||
+gmp-autoupdate hardened jack lightning lto cpu_flags_arm_neon
|
|
||||||
pgo pulseaudio selinux startup-notification +system-av1
|
|
||||||
+system-harfbuzz +system-icu +system-jpeg +system-libevent
|
|
||||||
+system-sqlite +system-libvpx +system-webp test wayland wifi +jit kde cross-lto thinlto"
|
|
||||||
|
|
||||||
REQUIRED_USE="pgo? ( lto )
|
|
||||||
cross-lto? ( clang lto )
|
|
||||||
thinlto? ( lto )
|
|
||||||
kde? ( !bindist )
|
|
||||||
wifi? ( dbus )"
|
|
||||||
|
|
||||||
RESTRICT="!bindist? ( bindist )
|
|
||||||
!test? ( test )"
|
|
||||||
|
|
||||||
PATCH_URIS=( https://dev.gentoo.org/~{anarchy,axs,polynomial-c,whissi}/mozilla/patchsets/${PATCHFF}.tar.xz )
|
|
||||||
SRC_URI="${SRC_URI}
|
|
||||||
${MOZ_SRC_URI}
|
|
||||||
https://dev.gentoo.org/~axs/distfiles/lightning-${MOZ_LIGHTNING_VER}.tar.xz
|
|
||||||
lightning? ( https://dev.gentoo.org/~axs/distfiles/gdata-provider-${MOZ_LIGHTNING_GDATA_VER}.tar.xz )
|
|
||||||
system-libvpx? ( https://dev.gentoo.org/~anarchy/patches/2013_update_libvpx_esr.patch )
|
|
||||||
${PATCH_URIS[@]}"
|
|
||||||
|
|
||||||
CDEPEND="
|
|
||||||
>=dev-libs/nss-3.44.4
|
|
||||||
>=dev-libs/nspr-4.21
|
|
||||||
dev-libs/atk
|
|
||||||
dev-libs/expat
|
|
||||||
>=x11-libs/cairo-1.10[X]
|
|
||||||
>=x11-libs/gtk+-2.18:2
|
|
||||||
>=x11-libs/gtk+-3.4.0:3[X]
|
|
||||||
x11-libs/gdk-pixbuf
|
|
||||||
>=x11-libs/pango-1.22.0
|
|
||||||
>=media-libs/libpng-1.6.35:0=[apng]
|
|
||||||
>=media-libs/mesa-10.2:*
|
|
||||||
media-libs/fontconfig
|
|
||||||
>=media-libs/freetype-2.4.10
|
|
||||||
kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
|
|
||||||
virtual/freedesktop-icon-theme
|
|
||||||
dbus? ( >=sys-apps/dbus-0.60
|
|
||||||
>=dev-libs/dbus-glib-0.72 )
|
|
||||||
startup-notification? ( >=x11-libs/startup-notification-0.8 )
|
|
||||||
>=x11-libs/pixman-0.19.2
|
|
||||||
>=dev-libs/glib-2.26:2
|
|
||||||
>=sys-libs/zlib-1.2.3
|
|
||||||
>=dev-libs/libffi-3.0.10:=
|
|
||||||
media-video/ffmpeg
|
|
||||||
x11-libs/libX11
|
|
||||||
x11-libs/libXcomposite
|
|
||||||
x11-libs/libXdamage
|
|
||||||
x11-libs/libXext
|
|
||||||
x11-libs/libXfixes
|
|
||||||
x11-libs/libXrender
|
|
||||||
x11-libs/libXt
|
|
||||||
system-av1? (
|
|
||||||
>=media-libs/dav1d-0.3.0:=
|
|
||||||
>=media-libs/libaom-1.0.0:=
|
|
||||||
)
|
|
||||||
system-harfbuzz? ( >=media-libs/harfbuzz-2.4.0:0= >=media-gfx/graphite2-1.3.13 )
|
|
||||||
system-icu? ( >=dev-libs/icu-63.1:= )
|
|
||||||
system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
|
|
||||||
system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
|
|
||||||
system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
|
|
||||||
system-sqlite? ( >=dev-db/sqlite-3.28.0:3[secure-delete,debug=] )
|
|
||||||
system-webp? ( >=media-libs/libwebp-1.0.2:0= )
|
|
||||||
wifi? ( kernel_linux? ( >=sys-apps/dbus-0.60
|
|
||||||
>=dev-libs/dbus-glib-0.72
|
|
||||||
net-misc/networkmanager ) )
|
|
||||||
jack? ( virtual/jack )
|
|
||||||
selinux? ( sec-policy/selinux-mozilla )"
|
|
||||||
|
|
||||||
RDEPEND="${CDEPEND}
|
|
||||||
jack? ( virtual/jack )
|
|
||||||
pulseaudio? ( || ( media-sound/pulseaudio
|
|
||||||
>=media-sound/apulse-0.1.9 ) )
|
|
||||||
selinux? ( sec-policy/selinux-mozilla )"
|
|
||||||
|
|
||||||
DEPEND="${CDEPEND}
|
|
||||||
app-arch/zip
|
|
||||||
app-arch/unzip
|
|
||||||
>=dev-util/cbindgen-0.8.7
|
|
||||||
>=net-libs/nodejs-8.11.0
|
|
||||||
>=sys-devel/binutils-2.30
|
|
||||||
sys-apps/findutils
|
|
||||||
virtual/pkgconfig
|
|
||||||
>=virtual/rust-1.34.0
|
|
||||||
|| (
|
|
||||||
(
|
|
||||||
sys-devel/clang:11
|
|
||||||
!clang? ( sys-devel/llvm:11 )
|
|
||||||
clang? (
|
|
||||||
=sys-devel/lld-11*
|
|
||||||
sys-devel/llvm:11
|
|
||||||
pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] )
|
|
||||||
)
|
|
||||||
)
|
|
||||||
(
|
|
||||||
sys-devel/clang:10
|
|
||||||
!clang? ( sys-devel/llvm:10 )
|
|
||||||
clang? (
|
|
||||||
=sys-devel/lld-10*
|
|
||||||
sys-devel/llvm:10
|
|
||||||
pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] )
|
|
||||||
)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
pulseaudio? ( media-sound/pulseaudio )
|
|
||||||
wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
|
|
||||||
amd64? ( >=dev-lang/yasm-1.1 virtual/opengl )
|
|
||||||
x86? ( >=dev-lang/yasm-1.1 virtual/opengl )
|
|
||||||
!system-av1? (
|
|
||||||
amd64? ( >=dev-lang/nasm-2.13 )
|
|
||||||
x86? ( >=dev-lang/nasm-2.13 )
|
|
||||||
)"
|
|
||||||
|
|
||||||
S="${WORKDIR}/${MOZ_P%b[0-9]*}"
|
|
||||||
|
|
||||||
BUILD_OBJ_DIR="${S}/tbird"
|
|
||||||
|
|
||||||
# allow GMP_PLUGIN_LIST to be set in an eclass or
|
|
||||||
# overridden in the enviromnent (advanced hackers only)
|
|
||||||
if [[ -z $GMP_PLUGIN_LIST ]] ; then
|
|
||||||
GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
|
|
||||||
fi
|
|
||||||
|
|
||||||
llvm_check_deps() {
|
|
||||||
if ! has_version --host-root "sys-devel/clang:${LLVM_SLOT}" ; then
|
|
||||||
ewarn "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use clang ; then
|
|
||||||
if ! has_version --host-root "=sys-devel/lld-${LLVM_SLOT}*" ; then
|
|
||||||
ewarn "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use pgo ; then
|
|
||||||
if ! has_version --host-root "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
|
|
||||||
ewarn "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
einfo "Will use LLVM slot ${LLVM_SLOT}!" >&2
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_pretend() {
|
|
||||||
if [[ ${MERGE_TYPE} != binary ]] ; then
|
|
||||||
if use pgo ; then
|
|
||||||
if ! has usersandbox $FEATURES ; then
|
|
||||||
die "You must enable usersandbox as X server can not run as root!"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Ensure we have enough disk space to compile
|
|
||||||
if use pgo || use lto || use debug || use test ; then
|
|
||||||
CHECKREQS_DISK_BUILD="8G"
|
|
||||||
else
|
|
||||||
CHECKREQS_DISK_BUILD="4500M"
|
|
||||||
fi
|
|
||||||
|
|
||||||
check-reqs_pkg_pretend
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_setup() {
|
|
||||||
moz_pkgsetup
|
|
||||||
|
|
||||||
if [[ ${MERGE_TYPE} != binary ]] ; then
|
|
||||||
# Ensure we have enough disk space to compile
|
|
||||||
if use pgo || use lto || use debug || use test ; then
|
|
||||||
CHECKREQS_DISK_BUILD="8G"
|
|
||||||
else
|
|
||||||
CHECKREQS_DISK_BUILD="4500M"
|
|
||||||
fi
|
|
||||||
|
|
||||||
check-reqs_pkg_setup
|
|
||||||
|
|
||||||
# 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_CACHE_HOME \
|
|
||||||
XDG_SESSION_COOKIE \
|
|
||||||
XAUTHORITY
|
|
||||||
|
|
||||||
addpredict /proc/self/oom_score_adj
|
|
||||||
|
|
||||||
llvm_pkg_setup
|
|
||||||
fi
|
|
||||||
|
|
||||||
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
|
|
||||||
}
|
|
||||||
|
|
||||||
src_unpack() {
|
|
||||||
default
|
|
||||||
|
|
||||||
# Unpack language packs
|
|
||||||
mozlinguas_src_unpack
|
|
||||||
}
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
# Apply firefox patchset then apply thunderbird patches
|
|
||||||
rm "${WORKDIR}"/firefox/2016_set_CARGO_PROFILE_RELEASE_LTO.patch || die
|
|
||||||
eapply "${WORKDIR}/firefox"
|
|
||||||
use system-libvpx && eapply "${DISTDIR}/2013_update_libvpx_esr.patch"
|
|
||||||
pushd "${S}"/comm &>/dev/null || die
|
|
||||||
eapply "${FILESDIR}/1000_fix_gentoo_preferences.patch"
|
|
||||||
popd &>/dev/null || die
|
|
||||||
|
|
||||||
# Allow user to apply any additional patches without modifing ebuild
|
|
||||||
eapply_user
|
|
||||||
|
|
||||||
einfo "Removing pre-built binaries ..."
|
|
||||||
find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' -o -name '*.la' -o -name '*.a' \) -print -delete || die
|
|
||||||
|
|
||||||
# OpenSUSE-KDE patchset
|
|
||||||
use kde && for i in $(cat "${FILESDIR}/opensuse-kde-$(get_major_version)/series"); do eapply "${FILESDIR}/opensuse-kde-$(get_major_version)/$i"; done
|
|
||||||
|
|
||||||
# Debian patches
|
|
||||||
for i in $(cat "${FILESDIR}/debian-patchset-$(get_major_version)/series");do eapply "${FILESDIR}/debian-patchset-$(get_major_version)/$i";done
|
|
||||||
|
|
||||||
# Fedora patches
|
|
||||||
for i in $(cat "${FILESDIR}/fedora-patchset-$(get_major_version)/series");do eapply "${FILESDIR}/fedora-patchset-$(get_major_version)/$i";done
|
|
||||||
|
|
||||||
# PGO freeze fix
|
|
||||||
#use pgo && eapply "${FILESDIR}/thunderbird-pgo_freeze_fix.patch"
|
|
||||||
|
|
||||||
# Make LTO respect MAKEOPTS
|
|
||||||
sed -i \
|
|
||||||
-e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
|
|
||||||
"${S}"/build/moz.configure/toolchain.configure \
|
|
||||||
|| die "sed failed to set num_cores"
|
|
||||||
|
|
||||||
# sed-in toolchain prefix
|
|
||||||
sed -i \
|
|
||||||
-e "s/objdump/${CHOST}-objdump/" \
|
|
||||||
"${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
|
|
||||||
|| die "sed failed to set toolchain prefix"
|
|
||||||
|
|
||||||
# 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
|
|
||||||
|
|
||||||
# Drop -Wl,--as-needed related manipulation for ia64 as it causes ld sefgaults, bug #582432
|
|
||||||
if use ia64 ; then
|
|
||||||
sed -i \
|
|
||||||
-e '/^OS_LIBS += no_as_needed/d' \
|
|
||||||
-e '/^OS_LIBS += as_needed/d' \
|
|
||||||
"${S}"/widget/gtk/mozgtk/gtk2/moz.build \
|
|
||||||
"${S}"/widget/gtk/mozgtk/gtk3/moz.build \
|
|
||||||
|| die "sed failed to drop --as-needed for ia64"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# 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}"/comm/mail/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
|
|
||||||
|
|
||||||
# Keep codebase the same even if not using official branding
|
|
||||||
sed '/^MOZ_DEV_EDITION=1/d' \
|
|
||||||
-i "${S}"/browser/branding/aurora/configure.sh || die
|
|
||||||
|
|
||||||
# rustfmt, a tool to format Rust code, is optional and not required to build Firefox.
|
|
||||||
# However, when available, an unsupported version can cause problems, bug #669548
|
|
||||||
sed -i -e "s@check_prog('RUSTFMT', add_rustup_path('rustfmt')@check_prog('RUSTFMT', add_rustup_path('rustfmt_do_not_use')@" \
|
|
||||||
"${S}"/build/moz.configure/rust.configure || die
|
|
||||||
|
|
||||||
# Autotools configure is now called old-configure.in
|
|
||||||
# This works because there is still a configure.in that happens to be for the
|
|
||||||
# shell wrapper configure script
|
|
||||||
eautoreconf old-configure.in
|
|
||||||
|
|
||||||
# Must run autoconf in js/src
|
|
||||||
cd "${S}"/js/src || die
|
|
||||||
eautoconf old-configure.in
|
|
||||||
}
|
|
||||||
|
|
||||||
src_configure() {
|
|
||||||
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
|
|
||||||
|
|
||||||
# Add information about TERM to output (build.log) to aid debugging
|
|
||||||
# blessings problems
|
|
||||||
if [[ -n "${TERM}" ]] ; then
|
|
||||||
einfo "TERM is set to: \"${TERM}\""
|
|
||||||
else
|
|
||||||
einfo "TERM is unset."
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use clang && ! tc-is-clang ; then
|
|
||||||
# Force clang
|
|
||||||
einfo "Enforcing the use of clang due to USE=clang ..."
|
|
||||||
CC=${CHOST}-clang
|
|
||||||
CXX=${CHOST}-clang++
|
|
||||||
strip-unsupported-flags
|
|
||||||
elif ! use clang && ! tc-is-gcc ; then
|
|
||||||
# Force gcc
|
|
||||||
einfo "Enforcing the use of gcc due to USE=-clang ..."
|
|
||||||
CC=${CHOST}-gcc
|
|
||||||
CXX=${CHOST}-g++
|
|
||||||
strip-unsupported-flags
|
|
||||||
fi
|
|
||||||
|
|
||||||
####################################
|
|
||||||
#
|
|
||||||
# mozconfig, CFLAGS and CXXFLAGS setup
|
|
||||||
#
|
|
||||||
####################################
|
|
||||||
|
|
||||||
mozconfig_init
|
|
||||||
# common config components
|
|
||||||
mozconfig_annotate 'system_libs' \
|
|
||||||
--with-system-zlib \
|
|
||||||
--with-system-bz2
|
|
||||||
|
|
||||||
# Must pass release in order to properly select linker
|
|
||||||
mozconfig_annotate 'Enable by Gentoo' --enable-release
|
|
||||||
|
|
||||||
if use pgo ; then
|
|
||||||
if ! has userpriv $FEATURES ; then
|
|
||||||
eerror "Building firefox with USE=pgo and FEATURES=-userpriv is not supported!"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Don't let user's LTO flags clash with upstream's flags
|
|
||||||
filter-flags -flto*
|
|
||||||
|
|
||||||
if use lto ; then
|
|
||||||
local show_old_compiler_warning=
|
|
||||||
|
|
||||||
if use clang ; then
|
|
||||||
# At this stage CC is adjusted and the following check will
|
|
||||||
# will work
|
|
||||||
if [[ $(clang-major-version) -lt 7 ]] ; then
|
|
||||||
show_old_compiler_warning=1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Upstream only supports lld when using clang
|
|
||||||
mozconfig_annotate "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
|
|
||||||
else
|
|
||||||
if [[ $(gcc-major-version) -lt 8 ]] ; then
|
|
||||||
show_old_compiler_warning=1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Bug 689358
|
|
||||||
append-cxxflags -flto
|
|
||||||
|
|
||||||
if ! use cpu_flags_x86_avx2 ; then
|
|
||||||
local _gcc_version_with_ipa_cdtor_fix="8.3"
|
|
||||||
local _current_gcc_version="$(gcc-major-version).$(gcc-minor-version)"
|
|
||||||
|
|
||||||
if ver_test "${_current_gcc_version}" -lt "${_gcc_version_with_ipa_cdtor_fix}" ; then
|
|
||||||
# due to a GCC bug, GCC will produce AVX2 instructions
|
|
||||||
# even if the CPU doesn't support AVX2, https://gcc.gnu.org/ml/gcc-patches/2018-12/msg01142.html
|
|
||||||
einfo "Disable IPA cdtor due to bug in GCC and missing AVX2 support -- triggered by USE=lto"
|
|
||||||
append-ldflags -fdisable-ipa-cdtor
|
|
||||||
else
|
|
||||||
einfo "No GCC workaround required, GCC version is already patched!"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
einfo "No GCC workaround required, system supports AVX2"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Linking only works when using ld.gold when LTO is enabled
|
|
||||||
mozconfig_annotate "no forcing ld=gold due to USE=lto" --enable-linker=bfd
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ -n "${show_old_compiler_warning}" ]] ; then
|
|
||||||
# Checking compiler's major version uses CC variable. Because we allow
|
|
||||||
# user to control used compiler via USE=clang flag, we cannot use
|
|
||||||
# initial value. So this is the earliest stage where we can do this check
|
|
||||||
# because pkg_pretend is not called in the main phase function sequence
|
|
||||||
# environment saving is not guaranteed so we don't know if we will have
|
|
||||||
# correct compiler until now.
|
|
||||||
ewarn ""
|
|
||||||
ewarn "USE=lto requires up-to-date compiler (>=gcc-8 or >=clang-7)."
|
|
||||||
ewarn "You are on your own -- expect build failures. Don't file bugs using that unsupported configuration!"
|
|
||||||
ewarn ""
|
|
||||||
sleep 5
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use cross-lto ; then
|
|
||||||
filter-flags -fno-plt
|
|
||||||
append-flags --target=x86_64-unknown-linux-gnu
|
|
||||||
append-ldflags --target=x86_64-unknown-linux-gnu
|
|
||||||
mozconfig_annotate '+lto-cross' --enable-lto=cross
|
|
||||||
mozconfig_annotate '+lto-cross' MOZ_LTO=1
|
|
||||||
mozconfig_annotate '+lto-cross' MOZ_LTO=cross
|
|
||||||
mozconfig_annotate '+lto-cross' MOZ_LTO_RUST=1
|
|
||||||
elif use thinlto ; then
|
|
||||||
mozconfig_annotate '+lto-thin' --enable-lto=thin
|
|
||||||
mozconfig_annotate '+lto-thin' MOZ_LTO=1
|
|
||||||
mozconfig_annotate '+lto-thin' MOZ_LTO=thin
|
|
||||||
else
|
|
||||||
mozconfig_annotate '+lto-full' --enable-lto=full
|
|
||||||
mozconfig_annotate '+lto-full' MOZ_LTO=1
|
|
||||||
mozconfig_annotate '+lto-full' MOZ_LTO=full
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use pgo ; then
|
|
||||||
mozconfig_annotate '+pgo' MOZ_PGO=1
|
|
||||||
mozconfig_annotate '+pgo-rust' MOZ_PGO_RUST=1
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
# Avoid auto-magic on linker
|
|
||||||
if use clang ; then
|
|
||||||
# This is upstream's default
|
|
||||||
mozconfig_annotate "forcing ld=lld due to USE=clang" --enable-linker=lld
|
|
||||||
elif tc-ld-is-gold ; then
|
|
||||||
mozconfig_annotate "linker is set to gold" --enable-linker=gold
|
|
||||||
else
|
|
||||||
mozconfig_annotate "linker is set to bfd" --enable-linker=bfd
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# It doesn't compile on alpha without this LDFLAGS
|
|
||||||
use alpha && append-ldflags "-Wl,--no-relax"
|
|
||||||
|
|
||||||
# Add full relro support for hardened
|
|
||||||
if use hardened ; then
|
|
||||||
append-ldflags "-Wl,-z,relro,-z,now"
|
|
||||||
mozconfig_use_enable hardened hardening
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Modifications to better support ARM, bug 553364
|
|
||||||
if use cpu_flags_arm_neon ; then
|
|
||||||
mozconfig_annotate '' --with-fpu=neon
|
|
||||||
|
|
||||||
if ! tc-is-clang ; then
|
|
||||||
# thumb options aren't supported when using clang, bug 666966
|
|
||||||
mozconfig_annotate '' --with-thumb=yes
|
|
||||||
mozconfig_annotate '' --with-thumb-interwork=no
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ ${CHOST} == armv*h* ]] ; then
|
|
||||||
mozconfig_annotate '' --with-float-abi=hard
|
|
||||||
if ! use system-libvpx ; then
|
|
||||||
sed -i -e "s|softfp|hard|" \
|
|
||||||
"${S}"/media/libvpx/moz.build
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
mozconfig_use_enable !bindist official-branding
|
|
||||||
|
|
||||||
mozconfig_use_enable debug
|
|
||||||
mozconfig_use_enable debug tests
|
|
||||||
if ! use debug ; then
|
|
||||||
mozconfig_annotate 'disabled by Gentoo' --disable-debug-symbols
|
|
||||||
else
|
|
||||||
mozconfig_annotate 'enabled by Gentoo' --enable-debug-symbols
|
|
||||||
fi
|
|
||||||
# These are enabled by default in all mozilla applications
|
|
||||||
mozconfig_annotate '' --with-system-nspr --with-nspr-prefix="${SYSROOT}${EPREFIX}"/usr
|
|
||||||
mozconfig_annotate '' --with-system-nss --with-nss-prefix="${SYSROOT}${EPREFIX}"/usr
|
|
||||||
mozconfig_annotate '' --x-includes="${SYSROOT}${EPREFIX}"/usr/include \
|
|
||||||
--x-libraries="${SYSROOT}${EPREFIX}"/usr/$(get_libdir)
|
|
||||||
mozconfig_annotate '' --prefix="${EPREFIX}"/usr
|
|
||||||
mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir)
|
|
||||||
mozconfig_annotate '' --disable-crashreporter
|
|
||||||
mozconfig_annotate 'Gentoo default' --with-system-png
|
|
||||||
mozconfig_annotate '' --enable-system-ffi
|
|
||||||
mozconfig_annotate '' --disable-gconf
|
|
||||||
mozconfig_annotate '' --with-intl-api
|
|
||||||
mozconfig_annotate '' --enable-system-pixman
|
|
||||||
# Instead of the standard --build= and --host=, mozilla uses --host instead
|
|
||||||
# of --build, and --target intstead of --host.
|
|
||||||
# Note, mozilla also has --build but it does not do what you think it does.
|
|
||||||
# Set both --target and --host as mozilla uses python to guess values otherwise
|
|
||||||
mozconfig_annotate '' --target="${CHOST}"
|
|
||||||
mozconfig_annotate '' --host="${CBUILD:-${CHOST}}"
|
|
||||||
mozconfig_annotate '' --with-toolchain-prefix="${CHOST}-"
|
|
||||||
if use system-libevent ; then
|
|
||||||
mozconfig_annotate '' --with-system-libevent="${SYSROOT}${EPREFIX}"/usr
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
|
|
||||||
mozconfig_annotate '' --enable-rust-simd
|
|
||||||
fi
|
|
||||||
|
|
||||||
# use the gtk3 toolkit (the only one supported at this point)
|
|
||||||
# TODO: Will this result in automagic dependency on x11-libs/gtk+[wayland]?
|
|
||||||
if use wayland ; then
|
|
||||||
mozconfig_annotate '' --enable-default-toolkit=cairo-gtk3-wayland
|
|
||||||
else
|
|
||||||
mozconfig_annotate '' --enable-default-toolkit=cairo-gtk3
|
|
||||||
fi
|
|
||||||
|
|
||||||
mozconfig_use_enable startup-notification
|
|
||||||
mozconfig_use_enable system-sqlite
|
|
||||||
mozconfig_use_with system-av1
|
|
||||||
mozconfig_use_with system-harfbuzz
|
|
||||||
mozconfig_use_with system-harfbuzz system-graphite2
|
|
||||||
mozconfig_use_with system-icu
|
|
||||||
mozconfig_use_with system-jpeg
|
|
||||||
mozconfig_use_with system-libvpx
|
|
||||||
mozconfig_use_with system-webp
|
|
||||||
mozconfig_use_enable pulseaudio
|
|
||||||
# force the deprecated alsa sound code if pulseaudio is disabled
|
|
||||||
if use kernel_linux && ! use pulseaudio ; then
|
|
||||||
mozconfig_annotate '-pulseaudio' --enable-alsa
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Disable built-in ccache support to avoid sandbox violation, #665420
|
|
||||||
# Use FEATURES=ccache instead!
|
|
||||||
mozconfig_annotate '' --without-ccache
|
|
||||||
sed -i -e 's/ccache_stats = None/return None/' \
|
|
||||||
python/mozbuild/mozbuild/controller/building.py || \
|
|
||||||
die "Failed to disable ccache stats call"
|
|
||||||
|
|
||||||
mozconfig_use_enable dbus
|
|
||||||
|
|
||||||
mozconfig_use_enable wifi necko-wifi
|
|
||||||
|
|
||||||
# enable JACK, bug 600002
|
|
||||||
mozconfig_use_enable jack
|
|
||||||
|
|
||||||
# Other tb-specific settings
|
|
||||||
mozconfig_annotate '' --with-user-appdir=.thunderbird
|
|
||||||
mozconfig_annotate '' --enable-ldap
|
|
||||||
mozconfig_annotate '' --enable-calendar
|
|
||||||
|
|
||||||
# Enable/Disable eme support
|
|
||||||
use eme-free && mozconfig_annotate '+eme-free' --disable-eme
|
|
||||||
|
|
||||||
mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
|
|
||||||
|
|
||||||
# allow elfhack to work in combination with unstripped binaries
|
|
||||||
# when they would normally be larger than 2GiB.
|
|
||||||
append-ldflags "-Wl,--compress-debug-sections=zlib"
|
|
||||||
|
|
||||||
if use clang && ! use arm64; then
|
|
||||||
# https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
|
|
||||||
# https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
|
|
||||||
mozconfig_annotate 'elf-hack is broken when using Clang' --disable-elf-hack
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "mk_add_options MOZ_OBJDIR=${BUILD_OBJ_DIR}" >> "${S}"/.mozconfig
|
|
||||||
echo "mk_add_options XARGS=/usr/bin/xargs" >> "${S}"/.mozconfig
|
|
||||||
|
|
||||||
#
|
|
||||||
mozconfig_annotate '' --disable-accessibility
|
|
||||||
mozconfig_annotate '' --disable-address-sanitizer
|
|
||||||
mozconfig_annotate '' --disable-address-sanitizer-reporter
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-callgrind
|
|
||||||
mozconfig_annotate '' --disable-crashreporter
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-debug
|
|
||||||
mozconfig_annotate '' --disable-debug-js-modules
|
|
||||||
mozconfig_annotate '' --disable-debug-symbols
|
|
||||||
mozconfig_annotate '' --disable-dmd
|
|
||||||
mozconfig_annotate '' --disable-dtrace
|
|
||||||
mozconfig_annotate '' --disable-dump-painting
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-elf-hack
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-gc-trace
|
|
||||||
mozconfig_annotate '' --disable-gconf
|
|
||||||
mozconfig_annotate '' --disable-gtest-in-build
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-instruments
|
|
||||||
mozconfig_annotate '' --disable-ios-target
|
|
||||||
mozconfig_annotate '' --disable-ipdl-tests
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-jprof
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-libproxy
|
|
||||||
mozconfig_annotate '' --disable-logrefcnt
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-memory-sanitizer
|
|
||||||
mozconfig_annotate '' --disable-mobile-optimize
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-necko-wifi
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-parental-controls
|
|
||||||
mozconfig_annotate '' --disable-perf
|
|
||||||
mozconfig_annotate '' --disable-profiling
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-reflow-perf
|
|
||||||
mozconfig_annotate '' --disable-rust-debug
|
|
||||||
mozconfig_annotate '' --disable-rust-tests
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-signmar
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-trace-logging
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-updater
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-valgrind
|
|
||||||
mozconfig_annotate '' --disable-verify-mar
|
|
||||||
mozconfig_annotate '' --disable-vtune
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-warnings-as-errors
|
|
||||||
mozconfig_annotate '' --disable-webrtc
|
|
||||||
|
|
||||||
mozconfig_annotate '' --without-debug-label
|
|
||||||
mozconfig_annotate '' --without-google-location-service-api-keyfile
|
|
||||||
mozconfig_annotate '' --without-google-safebrowsing-api-keyfile
|
|
||||||
|
|
||||||
mozconfig_annotate '' MOZ_DATA_REPORTING=
|
|
||||||
mozconfig_annotate '' MOZ_LOGGING=
|
|
||||||
mozconfig_annotate '' MOZ_PAY=
|
|
||||||
mozconfig_annotate '' MOZ_SERVICES_HEALTHREPORTER=
|
|
||||||
mozconfig_annotate '' MOZ_SERVICES_METRICS=
|
|
||||||
mozconfig_annotate '' MOZ_TELEMETRY_REPORTING=
|
|
||||||
mozconfig_annotate '' RUSTFLAGS=-Ctarget-cpu=native
|
|
||||||
mozconfig_annotate '' RUSTFLAGS=-Copt-level=3
|
|
||||||
mozconfig_annotate '' RUSTFLAGS=-Cdebuginfo=0
|
|
||||||
|
|
||||||
|
|
||||||
# Enable good features
|
|
||||||
mozconfig_annotate '' --enable-install-strip
|
|
||||||
mozconfig_annotate '' --enable-rust-simd
|
|
||||||
mozconfig_annotate '' --enable-strip
|
|
||||||
|
|
||||||
echo "export MOZ_DATA_REPORTING=" >> "${S}"/.mozconfig
|
|
||||||
echo "export MOZ_DEVICES=" >> "${S}"/.mozconfig
|
|
||||||
echo "export MOZ_LOGGING=" >> "${S}"/.mozconfig
|
|
||||||
echo "export MOZ_PAY=" >> "${S}"/.mozconfig
|
|
||||||
echo "export MOZ_SERVICES_HEALTHREPORTER=" >> "${S}"/.mozconfig
|
|
||||||
echo "export MOZ_SERVICES_METRICS=" >> "${S}"/.mozconfig
|
|
||||||
echo "export MOZ_TELEMETRY_REPORTING=" >> "${S}"/.mozconfig
|
|
||||||
echo "export RUSTFLAGS='-Ctarget-cpu=native -Copt-level=3 -Cdebuginfo=0'" >> "${S}"/.mozconfig
|
|
||||||
#
|
|
||||||
|
|
||||||
# Finalize and report settings
|
|
||||||
mozconfig_final
|
|
||||||
|
|
||||||
mkdir -p "${S}"/third_party/rust/libloading/.deps
|
|
||||||
|
|
||||||
# workaround for funky/broken upstream configure...
|
|
||||||
SHELL="${SHELL:-${EPREFIX}/bin/bash}" MOZ_NOSPAM=1 \
|
|
||||||
./mach configure || die
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
local _virtx=
|
|
||||||
if use pgo ; then
|
|
||||||
_virtx=virtx
|
|
||||||
|
|
||||||
# Reset and cleanup environment variables used by GNOME/XDG
|
|
||||||
gnome2_environment_reset
|
|
||||||
|
|
||||||
addpredict /root
|
|
||||||
addpredict /etc/gconf
|
|
||||||
fi
|
|
||||||
|
|
||||||
GDK_BACKEND=x11 \
|
|
||||||
MOZ_MAKE_FLAGS="${MAKEOPTS} -O" \
|
|
||||||
SHELL="${SHELL:-${EPREFIX}/bin/bash}" \
|
|
||||||
MOZ_NOSPAM=1 \
|
|
||||||
${_virtx} \
|
|
||||||
./mach build --verbose \
|
|
||||||
|| die
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
|
|
||||||
cd "${BUILD_OBJ_DIR}" || die
|
|
||||||
|
|
||||||
# Pax mark xpcshell for hardened support, only used for startupcache creation.
|
|
||||||
pax-mark m "${BUILD_OBJ_DIR}"/dist/bin/xpcshell
|
|
||||||
|
|
||||||
# Copy our preference before omnijar is created.
|
|
||||||
cp "${FILESDIR}"/thunderbird-gentoo-default-prefs.js-2 \
|
|
||||||
"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" \
|
|
||||||
|| die
|
|
||||||
|
|
||||||
# set dictionary path, to use system hunspell
|
|
||||||
echo "pref(\"spellchecker.dictionary_path\", \"${EPREFIX}/usr/share/myspell\");" \
|
|
||||||
>>"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" || die
|
|
||||||
|
|
||||||
# force the graphite pref if system-harfbuzz is enabled, since the pref cant disable it
|
|
||||||
if use system-harfbuzz ; then
|
|
||||||
echo "sticky_pref(\"gfx.font_rendering.graphite.enabled\",true);" \
|
|
||||||
>>"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" || die
|
|
||||||
fi
|
|
||||||
|
|
||||||
# force cairo as the canvas renderer on platforms without skia support
|
|
||||||
if [[ $(tc-endian) == "big" ]] ; then
|
|
||||||
echo "sticky_pref(\"gfx.canvas.azure.backends\",\"cairo\");" \
|
|
||||||
>>"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" || die
|
|
||||||
echo "sticky_pref(\"gfx.content.azure.backends\",\"cairo\");" \
|
|
||||||
>>"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" || die
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "pref(\"extensions.autoDisableScopes\", 3);" >> \
|
|
||||||
"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" \
|
|
||||||
|| die
|
|
||||||
|
|
||||||
local plugin
|
|
||||||
use gmp-autoupdate || use eme-free || for plugin in "${GMP_PLUGIN_LIST[@]}" ; do
|
|
||||||
echo "pref(\"media.${plugin}.autoupdate\", false);" >> \
|
|
||||||
"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" \
|
|
||||||
|| die
|
|
||||||
done
|
|
||||||
|
|
||||||
if use kde ; then
|
|
||||||
cat "${FILESDIR}"/opensuse-kde-$(get_major_version)/kde.js-1 >> \
|
|
||||||
"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" \
|
|
||||||
|| die
|
|
||||||
cat "${FILESDIR}"/opensuse-kde-$(get_major_version)/kde.js-1 >> \
|
|
||||||
"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/kde.js" \
|
|
||||||
|| die
|
|
||||||
fi
|
|
||||||
|
|
||||||
cd "${S}"
|
|
||||||
MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX}/bin/bash}" MOZ_NOSPAM=1 \
|
|
||||||
DESTDIR="${D}" ./mach install || die
|
|
||||||
|
|
||||||
# Install language packs
|
|
||||||
MOZEXTENSION_TARGET="distribution/extensions" MOZ_INSTALL_L10N_XPIFILE="1" mozlinguas_src_install
|
|
||||||
|
|
||||||
local size sizes icon_path icon
|
|
||||||
if ! use bindist; then
|
|
||||||
icon_path="${S}/comm/mail/branding/thunderbird"
|
|
||||||
icon="${PN}-icon"
|
|
||||||
|
|
||||||
domenu "${FILESDIR}"/icon/${PN}.desktop
|
|
||||||
else
|
|
||||||
icon_path="${S}/comm/mail/branding/nightly"
|
|
||||||
icon="${PN}-icon-unbranded"
|
|
||||||
|
|
||||||
newmenu "${FILESDIR}"/icon/${PN}-unbranded.desktop \
|
|
||||||
${PN}.desktop
|
|
||||||
|
|
||||||
sed -i -e "s:Mozilla\ Thunderbird:EarlyBird:g" \
|
|
||||||
"${ED}"/usr/share/applications/${PN}.desktop
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Install a 48x48 icon into /usr/share/pixmaps for legacy DEs
|
|
||||||
newicon "${icon_path}"/default48.png "${icon}".png
|
|
||||||
# Install icons for menu entry
|
|
||||||
sizes="16 22 24 32 48 256"
|
|
||||||
for size in ${sizes}; do
|
|
||||||
newicon -s ${size} "${icon_path}/default${size}.png" "${icon}.png"
|
|
||||||
done
|
|
||||||
|
|
||||||
# Disable built-in auto-update because we update firefox through package manager
|
|
||||||
insinto ${MOZILLA_FIVE_HOME}/distribution/
|
|
||||||
newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
|
|
||||||
|
|
||||||
# Add StartupNotify=true bug 237317
|
|
||||||
if use startup-notification ; then
|
|
||||||
echo "StartupNotify=true"\
|
|
||||||
>> "${ED}/usr/share/applications/${PN}.desktop" \
|
|
||||||
|| die
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Don't install llvm-symbolizer from sys-devel/llvm package
|
|
||||||
[[ -f "${ED%/}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] && \
|
|
||||||
rm "${ED%/}${MOZILLA_FIVE_HOME}/llvm-symbolizer"
|
|
||||||
|
|
||||||
local emid
|
|
||||||
# stage extra locales for lightning and install over existing
|
|
||||||
emid='{e2fda1a4-762b-4020-b5ad-a41df1933103}'
|
|
||||||
rm -f "${ED}"/${MOZILLA_FIVE_HOME}/distribution/extensions/${emid}.xpi || die
|
|
||||||
mozlinguas_xpistage_langpacks "${BUILD_OBJ_DIR}"/dist/bin/distribution/extensions/${emid} \
|
|
||||||
"${WORKDIR}"/lightning-${MOZ_LIGHTNING_VER} lightning calendar
|
|
||||||
|
|
||||||
mkdir -p "${T}/${emid}" || die
|
|
||||||
cp -RLp -t "${T}/${emid}" "${BUILD_OBJ_DIR}"/dist/bin/distribution/extensions/${emid}/* || die
|
|
||||||
insinto ${MOZILLA_FIVE_HOME}/distribution/extensions
|
|
||||||
doins -r "${T}/${emid}"
|
|
||||||
|
|
||||||
if use lightning; then
|
|
||||||
# move lightning out of distribution/extensions and into extensions for app-global install
|
|
||||||
mkdir -p "${ED}"/${MOZILLA_FIVE_HOME}/extensions
|
|
||||||
mv "${ED}"/${MOZILLA_FIVE_HOME}/{distribution,}/extensions/${emid} || die
|
|
||||||
|
|
||||||
# stage extra locales for gdata-provider and install app-global
|
|
||||||
mozlinguas_xpistage_langpacks "${BUILD_OBJ_DIR}"/dist/xpi-stage/gdata-provider \
|
|
||||||
"${WORKDIR}"/gdata-provider-${MOZ_LIGHTNING_GDATA_VER}
|
|
||||||
emid='{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}'
|
|
||||||
mkdir -p "${T}/${emid}" || die
|
|
||||||
cp -RLp -t "${T}/${emid}" "${BUILD_OBJ_DIR}"/dist/xpi-stage/gdata-provider/* || die
|
|
||||||
|
|
||||||
# manifest.json does not allow the addon to load, put install.rdf in place
|
|
||||||
# note, version number needs to be set properly
|
|
||||||
cp -RLp -t "${T}/${emid}" "${WORKDIR}"/gdata-provider-${MOZ_LIGHTNING_GDATA_VER}/install.rdf
|
|
||||||
sed -i -e '/em:version/ s/>[^<]*</>4.1</' "${T}/${emid}"/install.rdf
|
|
||||||
|
|
||||||
insinto ${MOZILLA_FIVE_HOME}/extensions
|
|
||||||
doins -r "${T}/${emid}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# thunderbird and thunderbird-bin are identical
|
|
||||||
rm "${ED%/}"${MOZILLA_FIVE_HOME}/thunderbird-bin || die
|
|
||||||
dosym thunderbird ${MOZILLA_FIVE_HOME}/thunderbird-bin
|
|
||||||
|
|
||||||
# Required in order to use plugins and even run thunderbird on hardened.
|
|
||||||
pax-mark pm "${ED%/}"${MOZILLA_FIVE_HOME}/{thunderbird,plugin-container}
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_preinst() {
|
|
||||||
# if the apulse libs are available in MOZILLA_FIVE_HOME then apulse
|
|
||||||
# doesn't need to be forced into the LD_LIBRARY_PATH
|
|
||||||
if use pulseaudio && has_version ">=media-sound/apulse-0.1.9" ; then
|
|
||||||
einfo "APULSE found - Generating library symlinks for sound support"
|
|
||||||
local lib
|
|
||||||
pushd "${ED}"${MOZILLA_FIVE_HOME} &>/dev/null || die
|
|
||||||
for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
|
|
||||||
# a quickpkg rolled by hand will grab symlinks as part of the package,
|
|
||||||
# so we need to avoid creating them if they already exist.
|
|
||||||
if [[ ! -L ${lib##*/} ]] ; then
|
|
||||||
ln -s "${lib}" ${lib##*/} || die
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
popd &>/dev/null || die
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
xdg_desktop_database_update
|
|
||||||
xdg_icon_cache_update
|
|
||||||
|
|
||||||
if ! use gmp-autoupdate && ! use eme-free ; then
|
|
||||||
elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
|
|
||||||
elog "installing into new profiles:"
|
|
||||||
local plugin
|
|
||||||
for plugin in "${GMP_PLUGIN_LIST[@]}"; do elog "\t ${plugin}" ; done
|
|
||||||
elog
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use pulseaudio && has_version ">=media-sound/apulse-0.1.9" ; then
|
|
||||||
elog "Apulse was detected at merge time on this system and so it will always be"
|
|
||||||
elog "used for sound. If you wish to use pulseaudio instead please unmerge"
|
|
||||||
elog "media-sound/apulse."
|
|
||||||
elog
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postrm() {
|
|
||||||
xdg_desktop_database_update
|
|
||||||
xdg_icon_cache_update
|
|
||||||
}
|
|
||||||
@ -1,816 +0,0 @@
|
|||||||
# Copyright 1999-2020 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI="6"
|
|
||||||
VIRTUALX_REQUIRED="pgo"
|
|
||||||
WANT_AUTOCONF="2.1"
|
|
||||||
MOZ_ESR=""
|
|
||||||
MOZ_LIGHTNING_VER="6.2.5"
|
|
||||||
MOZ_LIGHTNING_GDATA_VER="4.4.1"
|
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_{7,8,9} )
|
|
||||||
PYTHON_REQ_USE='ncurses,sqlite,ssl,threads(+)'
|
|
||||||
|
|
||||||
# This list can be updated using scripts/get_langs.sh from the mozilla overlay
|
|
||||||
MOZ_LANGS=(de en en-GB en-US ru)
|
|
||||||
|
|
||||||
# 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*}" # Handle rc for SRC_URI
|
|
||||||
|
|
||||||
if [[ ${MOZ_ESR} == 1 ]] ; then
|
|
||||||
# ESR releases have slightly different version numbers
|
|
||||||
MOZ_PV="${MOZ_PV}esr"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Patches
|
|
||||||
PATCHFF="firefox-78.0-patches-05"
|
|
||||||
|
|
||||||
MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/releases"
|
|
||||||
MOZ_SRC_URI="${MOZ_HTTP_URI}/${MOZ_PV}/source/${PN}-${MOZ_PV}.source.tar.xz"
|
|
||||||
MOZ_LANGPACK_PREFIX="${MOZ_PV}/linux-x86_64/xpi/"
|
|
||||||
|
|
||||||
if [[ "${PV}" == *_rc* ]]; then
|
|
||||||
MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
|
|
||||||
MOZ_LANGPACK_PREFIX="linux-i686/xpi/"
|
|
||||||
MOZ_SRC_URI="${MOZ_HTTP_URI}/source/${PN}-${MOZ_PV}.source.tar.xz -> $P.tar.xz"
|
|
||||||
fi
|
|
||||||
|
|
||||||
LLVM_MAX_SLOT=11
|
|
||||||
MOZCONFIG_OPTIONAL_JIT=1
|
|
||||||
|
|
||||||
inherit check-reqs eapi7-ver flag-o-matic toolchain-funcs eutils \
|
|
||||||
gnome2-utils llvm mozcoreconf-v6 pax-utils xdg-utils \
|
|
||||||
autotools mozlinguas-v2 multiprocessing virtualx
|
|
||||||
|
|
||||||
DESCRIPTION="Thunderbird Mail Client"
|
|
||||||
HOMEPAGE="https://www.mozilla.org/thunderbird"
|
|
||||||
|
|
||||||
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
|
|
||||||
|
|
||||||
SLOT="0"
|
|
||||||
LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
|
|
||||||
IUSE="bindist clang cpu_flags_x86_avx2 debug eme-free
|
|
||||||
+gmp-autoupdate hardened jack lightning lto cpu_flags_arm_neon
|
|
||||||
pgo pulseaudio selinux +system-av1
|
|
||||||
+system-harfbuzz +system-icu +system-jpeg +system-libevent
|
|
||||||
+system-libvpx +system-webp test wayland wifi"
|
|
||||||
|
|
||||||
REQUIRED_USE="pgo? ( lto )"
|
|
||||||
|
|
||||||
RESTRICT="!bindist? ( bindist )
|
|
||||||
!test? ( test )"
|
|
||||||
|
|
||||||
PATCH_URIS=( https://dev.gentoo.org/~{whissi,polynomial-c,axs}/mozilla/patchsets/${PATCHFF}.tar.xz )
|
|
||||||
SRC_URI="${SRC_URI}
|
|
||||||
${MOZ_SRC_URI}
|
|
||||||
https://dev.gentoo.org/~axs/distfiles/lightning-${MOZ_LIGHTNING_VER}.tar.xz
|
|
||||||
lightning? ( https://dev.gentoo.org/~axs/distfiles/gdata-provider-${MOZ_LIGHTNING_GDATA_VER}.tar.xz )
|
|
||||||
${PATCH_URIS[@]}"
|
|
||||||
|
|
||||||
CDEPEND="
|
|
||||||
>=dev-libs/nss-3.54
|
|
||||||
>=dev-libs/nspr-4.25
|
|
||||||
dev-libs/atk
|
|
||||||
dev-libs/expat
|
|
||||||
>=x11-libs/cairo-1.10[X]
|
|
||||||
>=x11-libs/gtk+-2.18:2
|
|
||||||
>=x11-libs/gtk+-3.4.0:3[X]
|
|
||||||
x11-libs/gdk-pixbuf
|
|
||||||
>=x11-libs/pango-1.22.0
|
|
||||||
>=media-libs/libpng-1.6.35:0=[apng]
|
|
||||||
>=media-libs/mesa-10.2:*
|
|
||||||
media-libs/fontconfig
|
|
||||||
>=media-libs/freetype-2.4.10
|
|
||||||
kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
|
|
||||||
virtual/freedesktop-icon-theme
|
|
||||||
sys-apps/dbus
|
|
||||||
dev-libs/dbus-glib
|
|
||||||
>=x11-libs/pixman-0.19.2
|
|
||||||
>=dev-libs/glib-2.26:2
|
|
||||||
>=sys-libs/zlib-1.2.3
|
|
||||||
>=dev-libs/libffi-3.0.10:=
|
|
||||||
media-video/ffmpeg
|
|
||||||
x11-libs/libX11
|
|
||||||
x11-libs/libXcomposite
|
|
||||||
x11-libs/libXdamage
|
|
||||||
x11-libs/libXext
|
|
||||||
x11-libs/libXfixes
|
|
||||||
x11-libs/libXrender
|
|
||||||
x11-libs/libXt
|
|
||||||
system-av1? (
|
|
||||||
>=media-libs/dav1d-0.3.0:=
|
|
||||||
>=media-libs/libaom-1.0.0:=
|
|
||||||
)
|
|
||||||
system-harfbuzz? (
|
|
||||||
>=media-libs/harfbuzz-2.6.8:0=
|
|
||||||
>=media-gfx/graphite2-1.3.13
|
|
||||||
)
|
|
||||||
system-icu? ( >=dev-libs/icu-67.1:= )
|
|
||||||
system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
|
|
||||||
system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
|
|
||||||
system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
|
|
||||||
system-webp? ( >=media-libs/libwebp-1.1.0:0= )
|
|
||||||
wifi? (
|
|
||||||
kernel_linux? (
|
|
||||||
net-misc/networkmanager
|
|
||||||
)
|
|
||||||
)
|
|
||||||
jack? ( virtual/jack )
|
|
||||||
selinux? ( sec-policy/selinux-mozilla )"
|
|
||||||
|
|
||||||
RDEPEND="${CDEPEND}
|
|
||||||
jack? ( virtual/jack )
|
|
||||||
pulseaudio? (
|
|
||||||
|| (
|
|
||||||
media-sound/pulseaudio
|
|
||||||
>=media-sound/apulse-0.1.12-r4
|
|
||||||
)
|
|
||||||
)
|
|
||||||
selinux? ( sec-policy/selinux-mozilla )"
|
|
||||||
|
|
||||||
DEPEND="${CDEPEND}
|
|
||||||
app-arch/zip
|
|
||||||
app-arch/unzip
|
|
||||||
>=dev-util/cbindgen-0.14.3
|
|
||||||
>=net-libs/nodejs-10.19.0
|
|
||||||
>=sys-devel/binutils-2.30
|
|
||||||
sys-apps/findutils
|
|
||||||
virtual/pkgconfig
|
|
||||||
>=virtual/rust-1.43.0
|
|
||||||
|| (
|
|
||||||
(
|
|
||||||
sys-devel/clang:11
|
|
||||||
!clang? ( sys-devel/llvm:11 )
|
|
||||||
clang? (
|
|
||||||
=sys-devel/lld-11*
|
|
||||||
sys-devel/llvm:11
|
|
||||||
pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] )
|
|
||||||
)
|
|
||||||
)
|
|
||||||
(
|
|
||||||
sys-devel/clang:10
|
|
||||||
!clang? ( sys-devel/llvm:10 )
|
|
||||||
clang? (
|
|
||||||
=sys-devel/lld-10*
|
|
||||||
sys-devel/llvm:10
|
|
||||||
pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] )
|
|
||||||
)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
|
|
||||||
amd64? ( >=dev-lang/yasm-1.1 virtual/opengl )
|
|
||||||
x86? ( >=dev-lang/yasm-1.1 virtual/opengl )
|
|
||||||
!system-av1? (
|
|
||||||
amd64? ( >=dev-lang/nasm-2.13 )
|
|
||||||
x86? ( >=dev-lang/nasm-2.13 )
|
|
||||||
)"
|
|
||||||
|
|
||||||
S="${WORKDIR}/${MOZ_P%b[0-9]*}"
|
|
||||||
|
|
||||||
BUILD_OBJ_DIR="${S}/tbird"
|
|
||||||
|
|
||||||
# allow GMP_PLUGIN_LIST to be set in an eclass or
|
|
||||||
# overridden in the enviromnent (advanced hackers only)
|
|
||||||
if [[ -z $GMP_PLUGIN_LIST ]] ; then
|
|
||||||
GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
|
|
||||||
fi
|
|
||||||
|
|
||||||
llvm_check_deps() {
|
|
||||||
if ! has_version --host-root "sys-devel/clang:${LLVM_SLOT}" ; then
|
|
||||||
ewarn "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use clang ; then
|
|
||||||
if ! has_version --host-root "=sys-devel/lld-${LLVM_SLOT}*" ; then
|
|
||||||
ewarn "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use pgo ; then
|
|
||||||
if ! has_version --host-root "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
|
|
||||||
ewarn "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
einfo "Will use LLVM slot ${LLVM_SLOT}!" >&2
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_pretend() {
|
|
||||||
if [[ ${MERGE_TYPE} != binary ]] ; then
|
|
||||||
if use pgo ; then
|
|
||||||
if ! has usersandbox $FEATURES ; then
|
|
||||||
die "You must enable usersandbox as X server can not run as root!"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Ensure we have enough disk space to compile
|
|
||||||
if use pgo || use lto || use debug || use test ; then
|
|
||||||
CHECKREQS_DISK_BUILD="11G"
|
|
||||||
else
|
|
||||||
CHECKREQS_DISK_BUILD="5G"
|
|
||||||
fi
|
|
||||||
|
|
||||||
check-reqs_pkg_pretend
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_setup() {
|
|
||||||
moz_pkgsetup
|
|
||||||
|
|
||||||
if [[ ${MERGE_TYPE} != binary ]] ; then
|
|
||||||
# Ensure we have enough disk space to compile
|
|
||||||
if use pgo || use lto || use debug || use test ; then
|
|
||||||
CHECKREQS_DISK_BUILD="11G"
|
|
||||||
else
|
|
||||||
CHECKREQS_DISK_BUILD="5G"
|
|
||||||
fi
|
|
||||||
|
|
||||||
check-reqs_pkg_setup
|
|
||||||
|
|
||||||
# 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_CACHE_HOME \
|
|
||||||
XDG_SESSION_COOKIE \
|
|
||||||
XAUTHORITY
|
|
||||||
|
|
||||||
addpredict /proc/self/oom_score_adj
|
|
||||||
|
|
||||||
llvm_pkg_setup
|
|
||||||
fi
|
|
||||||
|
|
||||||
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
|
|
||||||
}
|
|
||||||
|
|
||||||
src_unpack() {
|
|
||||||
default
|
|
||||||
|
|
||||||
# Unpack language packs
|
|
||||||
mozlinguas_src_unpack
|
|
||||||
}
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
# Apply firefox patchset then apply thunderbird patches
|
|
||||||
rm "${WORKDIR}"/firefox/0029-bmo-1632429-enum34-and-enum-virtualenv-packages-are-.patch || die
|
|
||||||
eapply "${WORKDIR}/firefox"
|
|
||||||
pushd "${S}"/comm &>/dev/null || die
|
|
||||||
eapply "${FILESDIR}/1000_fix_gentoo_preferences_78.2.0.patch"
|
|
||||||
popd &>/dev/null || die
|
|
||||||
|
|
||||||
# Allow user to apply any additional patches without modifing ebuild
|
|
||||||
eapply_user
|
|
||||||
|
|
||||||
# Make LTO respect MAKEOPTS
|
|
||||||
sed -i \
|
|
||||||
-e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
|
|
||||||
"${S}"/build/moz.configure/lto-pgo.configure \
|
|
||||||
|| die "sed failed to set num_cores"
|
|
||||||
|
|
||||||
# Make ICU respect MAKEOPTS
|
|
||||||
sed -i \
|
|
||||||
-e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
|
|
||||||
"${S}"/intl/icu_sources_data.py \
|
|
||||||
|| die "sed failed to set num_cores"
|
|
||||||
|
|
||||||
# sed-in toolchain prefix
|
|
||||||
sed -i \
|
|
||||||
-e "s/objdump/${CHOST}-objdump/" \
|
|
||||||
"${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
|
|
||||||
|| die "sed failed to set toolchain prefix"
|
|
||||||
|
|
||||||
# Allow user to apply any additional patches without modifing ebuild
|
|
||||||
eapply_user
|
|
||||||
|
|
||||||
einfo "Removing pre-built binaries ..."
|
|
||||||
find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' \) -print -delete || die
|
|
||||||
|
|
||||||
# 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
|
|
||||||
|
|
||||||
# Drop -Wl,--as-needed related manipulation for ia64 as it causes ld sefgaults, bug #582432
|
|
||||||
if use ia64 ; then
|
|
||||||
sed -i \
|
|
||||||
-e '/^OS_LIBS += no_as_needed/d' \
|
|
||||||
-e '/^OS_LIBS += as_needed/d' \
|
|
||||||
"${S}"/widget/gtk/mozgtk/gtk2/moz.build \
|
|
||||||
"${S}"/widget/gtk/mozgtk/gtk3/moz.build \
|
|
||||||
|| die "sed failed to drop --as-needed for ia64"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# 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
|
|
||||||
|
|
||||||
# Keep codebase the same even if not using official branding
|
|
||||||
sed '/^MOZ_DEV_EDITION=1/d' \
|
|
||||||
-i "${S}"/browser/branding/aurora/configure.sh || die
|
|
||||||
|
|
||||||
# rustfmt, a tool to format Rust code, is optional and not required to build Firefox.
|
|
||||||
# However, when available, an unsupported version can cause problems, bug #669548
|
|
||||||
sed -i -e "s@check_prog('RUSTFMT', add_rustup_path('rustfmt')@check_prog('RUSTFMT', add_rustup_path('rustfmt_do_not_use')@" \
|
|
||||||
"${S}"/build/moz.configure/rust.configure || die
|
|
||||||
|
|
||||||
if has_version ">=virtual/rust-1.45.0" ; then
|
|
||||||
einfo "Unbreak build with >=rust-1.45.0, bmo#1640982 ..."
|
|
||||||
sed -i \
|
|
||||||
-e 's/\(^cargo_rustc_flags +=.* \)-Clto\( \|$\)/\1/' \
|
|
||||||
"${S}/config/makefiles/rust.mk" || die
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Autotools configure is now called old-configure.in
|
|
||||||
# This works because there is still a configure.in that happens to be for the
|
|
||||||
# shell wrapper configure script
|
|
||||||
eautoreconf old-configure.in
|
|
||||||
|
|
||||||
# Must run autoconf in js/src
|
|
||||||
cd "${S}"/js/src || die
|
|
||||||
eautoconf old-configure.in
|
|
||||||
|
|
||||||
# Clear checksums that present a problem
|
|
||||||
sed -i 's/\("files":{\)[^}]*/\1/' "${S}"/third_party/rust/target-lexicon-0.9.0/.cargo-checksum.json || die
|
|
||||||
}
|
|
||||||
|
|
||||||
src_configure() {
|
|
||||||
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
|
|
||||||
|
|
||||||
# Add information about TERM to output (build.log) to aid debugging
|
|
||||||
# blessings problems
|
|
||||||
if [[ -n "${TERM}" ]] ; then
|
|
||||||
einfo "TERM is set to: \"${TERM}\""
|
|
||||||
else
|
|
||||||
einfo "TERM is unset."
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use clang && ! tc-is-clang ; then
|
|
||||||
# Force clang
|
|
||||||
einfo "Enforcing the use of clang due to USE=clang ..."
|
|
||||||
CC=${CHOST}-clang
|
|
||||||
CXX=${CHOST}-clang++
|
|
||||||
strip-unsupported-flags
|
|
||||||
elif ! use clang && ! tc-is-gcc ; then
|
|
||||||
# Force gcc
|
|
||||||
einfo "Enforcing the use of gcc due to USE=-clang ..."
|
|
||||||
CC=${CHOST}-gcc
|
|
||||||
CXX=${CHOST}-g++
|
|
||||||
strip-unsupported-flags
|
|
||||||
fi
|
|
||||||
|
|
||||||
####################################
|
|
||||||
#
|
|
||||||
# mozconfig, CFLAGS and CXXFLAGS setup
|
|
||||||
#
|
|
||||||
####################################
|
|
||||||
|
|
||||||
mozconfig_init
|
|
||||||
# common config components
|
|
||||||
mozconfig_annotate 'system_libs' \
|
|
||||||
--with-system-zlib \
|
|
||||||
--with-system-bz2
|
|
||||||
|
|
||||||
# Must pass release in order to properly select linker
|
|
||||||
mozconfig_annotate 'Enable by Gentoo' --enable-release
|
|
||||||
|
|
||||||
# libclang.so is not properly detected work around issue
|
|
||||||
mozconfig_annotate '' --with-libclang-path="$(llvm-config --libdir)"
|
|
||||||
|
|
||||||
if use pgo ; then
|
|
||||||
if ! has userpriv $FEATURES ; then
|
|
||||||
eerror "Building thunderbird with USE=pgo and FEATURES=-userpriv is not supported!"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Don't let user's LTO flags clash with upstream's flags
|
|
||||||
filter-flags -flto*
|
|
||||||
|
|
||||||
if use lto ; then
|
|
||||||
local show_old_compiler_warning=
|
|
||||||
|
|
||||||
if use clang ; then
|
|
||||||
# At this stage CC is adjusted and the following check will
|
|
||||||
# will work
|
|
||||||
if [[ $(clang-major-version) -lt 7 ]] ; then
|
|
||||||
show_old_compiler_warning=1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Upstream only supports lld when using clang
|
|
||||||
mozconfig_annotate "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
|
|
||||||
else
|
|
||||||
if [[ $(gcc-major-version) -lt 8 ]] ; then
|
|
||||||
show_old_compiler_warning=1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ! use cpu_flags_x86_avx2 ; then
|
|
||||||
local _gcc_version_with_ipa_cdtor_fix="8.3"
|
|
||||||
local _current_gcc_version="$(gcc-major-version).$(gcc-minor-version)"
|
|
||||||
|
|
||||||
if ver_test "${_current_gcc_version}" -lt "${_gcc_version_with_ipa_cdtor_fix}" ; then
|
|
||||||
# due to a GCC bug, GCC will produce AVX2 instructions
|
|
||||||
# even if the CPU doesn't support AVX2, https://gcc.gnu.org/ml/gcc-patches/2018-12/msg01142.html
|
|
||||||
einfo "Disable IPA cdtor due to bug in GCC and missing AVX2 support -- triggered by USE=lto"
|
|
||||||
append-ldflags -fdisable-ipa-cdtor
|
|
||||||
else
|
|
||||||
einfo "No GCC workaround required, GCC version is already patched!"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
einfo "No GCC workaround required, system supports AVX2"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Linking only works when using ld.gold when LTO is enabled
|
|
||||||
mozconfig_annotate "forcing ld=gold due to USE=lto" --enable-linker=gold
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ -n "${show_old_compiler_warning}" ]] ; then
|
|
||||||
# Checking compiler's major version uses CC variable. Because we allow
|
|
||||||
# user to control used compiler via USE=clang flag, we cannot use
|
|
||||||
# initial value. So this is the earliest stage where we can do this check
|
|
||||||
# because pkg_pretend is not called in the main phase function sequence
|
|
||||||
# environment saving is not guaranteed so we don't know if we will have
|
|
||||||
# correct compiler until now.
|
|
||||||
ewarn ""
|
|
||||||
ewarn "USE=lto requires up-to-date compiler (>=gcc-8 or >=clang-7)."
|
|
||||||
ewarn "You are on your own -- expect build failures. Don't file bugs using that unsupported configuration!"
|
|
||||||
ewarn ""
|
|
||||||
sleep 5
|
|
||||||
fi
|
|
||||||
|
|
||||||
mozconfig_annotate '+lto' --enable-lto=thin
|
|
||||||
|
|
||||||
if use pgo ; then
|
|
||||||
mozconfig_annotate '+pgo' MOZ_PGO=1
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
# Avoid auto-magic on linker
|
|
||||||
if use clang ; then
|
|
||||||
# This is upstream's default
|
|
||||||
mozconfig_annotate "forcing ld=lld due to USE=clang" --enable-linker=lld
|
|
||||||
elif tc-ld-is-gold ; then
|
|
||||||
mozconfig_annotate "linker is set to gold" --enable-linker=gold
|
|
||||||
else
|
|
||||||
mozconfig_annotate "linker is set to bfd" --enable-linker=bfd
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# 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,now"
|
|
||||||
|
|
||||||
# Modifications to better support ARM, bug 553364
|
|
||||||
if use cpu_flags_arm_neon ; then
|
|
||||||
mozconfig_annotate '' --with-fpu=neon
|
|
||||||
|
|
||||||
if ! tc-is-clang ; then
|
|
||||||
# thumb options aren't supported when using clang, bug 666966
|
|
||||||
mozconfig_annotate '' --with-thumb=yes
|
|
||||||
mozconfig_annotate '' --with-thumb-interwork=no
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ ${CHOST} == armv*h* ]] ; then
|
|
||||||
mozconfig_annotate '' --with-float-abi=hard
|
|
||||||
if ! use system-libvpx ; then
|
|
||||||
sed -i -e "s|softfp|hard|" \
|
|
||||||
"${S}"/media/libvpx/moz.build
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
mozconfig_use_enable !bindist official-branding
|
|
||||||
|
|
||||||
mozconfig_use_enable debug
|
|
||||||
mozconfig_use_enable debug tests
|
|
||||||
if ! use debug ; then
|
|
||||||
mozconfig_annotate 'disabled by Gentoo' --disable-debug-symbols
|
|
||||||
else
|
|
||||||
mozconfig_annotate 'enabled by Gentoo' --enable-debug-symbols
|
|
||||||
fi
|
|
||||||
# These are enabled by default in all mozilla applications
|
|
||||||
mozconfig_annotate '' --with-system-nspr
|
|
||||||
mozconfig_annotate '' --with-system-nss
|
|
||||||
mozconfig_annotate '' --x-includes="${SYSROOT}${EPREFIX}"/usr/include \
|
|
||||||
--x-libraries="${SYSROOT}${EPREFIX}"/usr/$(get_libdir)
|
|
||||||
mozconfig_annotate '' --prefix="${EPREFIX}"/usr
|
|
||||||
mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir)
|
|
||||||
mozconfig_annotate '' --disable-crashreporter
|
|
||||||
mozconfig_annotate 'Gentoo default' --with-system-png
|
|
||||||
mozconfig_annotate '' --enable-system-ffi
|
|
||||||
mozconfig_annotate '' --with-intl-api
|
|
||||||
mozconfig_annotate '' --enable-system-pixman
|
|
||||||
# Instead of the standard --build= and --host=, mozilla uses --host instead
|
|
||||||
# of --build, and --target intstead of --host.
|
|
||||||
# Note, mozilla also has --build but it does not do what you think it does.
|
|
||||||
# Set both --target and --host as mozilla uses python to guess values otherwise
|
|
||||||
mozconfig_annotate '' --target="${CHOST}"
|
|
||||||
mozconfig_annotate '' --host="${CBUILD:-${CHOST}}"
|
|
||||||
mozconfig_annotate '' --with-toolchain-prefix="${CHOST}-"
|
|
||||||
if use system-libevent ; then
|
|
||||||
mozconfig_annotate '' --with-system-libevent="${SYSROOT}${EPREFIX}"/usr
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
|
|
||||||
mozconfig_annotate '' --enable-rust-simd
|
|
||||||
fi
|
|
||||||
|
|
||||||
# use the gtk3 toolkit (the only one supported at this point)
|
|
||||||
# TODO: Will this result in automagic dependency on x11-libs/gtk+[wayland]?
|
|
||||||
if use wayland ; then
|
|
||||||
mozconfig_annotate '' --enable-default-toolkit=cairo-gtk3-wayland
|
|
||||||
else
|
|
||||||
mozconfig_annotate '' --enable-default-toolkit=cairo-gtk3
|
|
||||||
fi
|
|
||||||
|
|
||||||
mozconfig_use_with system-av1
|
|
||||||
mozconfig_use_with system-harfbuzz
|
|
||||||
mozconfig_use_with system-harfbuzz system-graphite2
|
|
||||||
mozconfig_use_with system-icu
|
|
||||||
mozconfig_use_with system-jpeg
|
|
||||||
mozconfig_use_with system-libvpx
|
|
||||||
mozconfig_use_with system-webp
|
|
||||||
mozconfig_use_enable pulseaudio
|
|
||||||
# force the deprecated alsa sound code if pulseaudio is disabled
|
|
||||||
if use kernel_linux && ! use pulseaudio ; then
|
|
||||||
mozconfig_annotate '-pulseaudio' --enable-alsa
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Disable built-in ccache support to avoid sandbox violation, #665420
|
|
||||||
# Use FEATURES=ccache instead!
|
|
||||||
mozconfig_annotate '' --without-ccache
|
|
||||||
sed -i -e 's/ccache_stats = None/return None/' \
|
|
||||||
python/mozbuild/mozbuild/controller/building.py || \
|
|
||||||
die "Failed to disable ccache stats call"
|
|
||||||
|
|
||||||
mozconfig_use_enable wifi necko-wifi
|
|
||||||
|
|
||||||
# enable JACK, bug 600002
|
|
||||||
mozconfig_use_enable jack
|
|
||||||
|
|
||||||
# Other tb-specific settings
|
|
||||||
mozconfig_annotate '' --with-user-appdir=.thunderbird
|
|
||||||
mozconfig_annotate '' --enable-calendar
|
|
||||||
|
|
||||||
# Enable/Disable eme support
|
|
||||||
use eme-free && mozconfig_annotate '+eme-free' --disable-eme
|
|
||||||
|
|
||||||
# Setup api key for location services and safebrowsing, https://bugzilla.mozilla.org/show_bug.cgi?id=1531176#c34
|
|
||||||
echo -n "${_google_api_key}" > "${S}"/google-api-key
|
|
||||||
mozconfig_annotate '' --with-google-location-service-api-keyfile="${S}/google-api-key"
|
|
||||||
mozconfig_annotate '' --with-google-safebrowsing-api-keyfile="${S}/google-api-key"
|
|
||||||
|
|
||||||
mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
|
|
||||||
|
|
||||||
# allow elfhack to work in combination with unstripped binaries
|
|
||||||
# when they would normally be larger than 2GiB.
|
|
||||||
append-ldflags "-Wl,--compress-debug-sections=zlib"
|
|
||||||
|
|
||||||
if use clang ; then
|
|
||||||
# https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
|
|
||||||
# https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
|
|
||||||
# toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
|
|
||||||
local disable_elf_hack=
|
|
||||||
if use amd64 ; then
|
|
||||||
disable_elf_hack=yes
|
|
||||||
elif use x86 ; then
|
|
||||||
disable_elf_hack=yes
|
|
||||||
elif use arm ; then
|
|
||||||
disable_elf_hack=yes
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ -n ${disable_elf_hack} ]] ; then
|
|
||||||
mozconfig_annotate 'elf-hack is broken when using Clang' --disable-elf-hack
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "mk_add_options MOZ_OBJDIR=${BUILD_OBJ_DIR}" >> "${S}"/.mozconfig
|
|
||||||
echo "mk_add_options XARGS=/usr/bin/xargs" >> "${S}"/.mozconfig
|
|
||||||
|
|
||||||
# Finalize and report settings
|
|
||||||
mozconfig_final
|
|
||||||
|
|
||||||
mkdir -p "${S}"/third_party/rust/libloading/.deps
|
|
||||||
|
|
||||||
# workaround for funky/broken upstream configure...
|
|
||||||
SHELL="${SHELL:-${EPREFIX}/bin/bash}" MOZ_NOSPAM=1 \
|
|
||||||
./mach configure || die
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
local _virtx=
|
|
||||||
if use pgo ; then
|
|
||||||
_virtx=virtx
|
|
||||||
|
|
||||||
# Reset and cleanup environment variables used by GNOME/XDG
|
|
||||||
gnome2_environment_reset
|
|
||||||
|
|
||||||
addpredict /root
|
|
||||||
fi
|
|
||||||
|
|
||||||
GDK_BACKEND=x11 \
|
|
||||||
MOZ_MAKE_FLAGS="${MAKEOPTS} -O" \
|
|
||||||
SHELL="${SHELL:-${EPREFIX}/bin/bash}" \
|
|
||||||
MOZ_NOSPAM=1 \
|
|
||||||
${_virtx} \
|
|
||||||
./mach build --verbose \
|
|
||||||
|| die
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
|
|
||||||
cd "${BUILD_OBJ_DIR}" || die
|
|
||||||
|
|
||||||
# Pax mark xpcshell for hardened support, only used for startupcache creation.
|
|
||||||
pax-mark m "${BUILD_OBJ_DIR}"/dist/bin/xpcshell
|
|
||||||
|
|
||||||
# Copy our preference before omnijar is created.
|
|
||||||
cp "${FILESDIR}"/thunderbird-gentoo-default-prefs.js-2 \
|
|
||||||
"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" \
|
|
||||||
|| die
|
|
||||||
|
|
||||||
# set dictionary path, to use system hunspell
|
|
||||||
echo "pref(\"spellchecker.dictionary_path\", \"${EPREFIX}/usr/share/myspell\");" \
|
|
||||||
>>"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" || die
|
|
||||||
|
|
||||||
# force the graphite pref if system-harfbuzz is enabled, since the pref cant disable it
|
|
||||||
if use system-harfbuzz ; then
|
|
||||||
echo "sticky_pref(\"gfx.font_rendering.graphite.enabled\",true);" \
|
|
||||||
>>"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" || die
|
|
||||||
fi
|
|
||||||
|
|
||||||
# force cairo as the canvas renderer on platforms without skia support
|
|
||||||
if [[ $(tc-endian) == "big" ]] ; then
|
|
||||||
echo "sticky_pref(\"gfx.canvas.azure.backends\",\"cairo\");" \
|
|
||||||
>>"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" || die
|
|
||||||
echo "sticky_pref(\"gfx.content.azure.backends\",\"cairo\");" \
|
|
||||||
>>"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" || die
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "pref(\"extensions.autoDisableScopes\", 3);" >> \
|
|
||||||
"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" \
|
|
||||||
|| die
|
|
||||||
|
|
||||||
if ! use gmp-autoupdate ; then
|
|
||||||
local plugin
|
|
||||||
for plugin in "${GMP_PLUGIN_LIST[@]}" ; do
|
|
||||||
echo "pref(\"media.${plugin}.autoupdate\", false);" >> \
|
|
||||||
"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" \
|
|
||||||
|| die
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
|
|
||||||
cd "${S}"
|
|
||||||
MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX}/bin/bash}" MOZ_NOSPAM=1 \
|
|
||||||
DESTDIR="${D}" ./mach install || die
|
|
||||||
|
|
||||||
# Install language packs
|
|
||||||
MOZEXTENSION_TARGET="distribution/extensions" MOZ_INSTALL_L10N_XPIFILE="1" mozlinguas_src_install
|
|
||||||
|
|
||||||
local size sizes icon_path icon
|
|
||||||
if ! use bindist; then
|
|
||||||
icon_path="${S}/comm/mail/branding/thunderbird"
|
|
||||||
icon="${PN}-icon"
|
|
||||||
|
|
||||||
domenu "${FILESDIR}"/icon/${PN}.desktop
|
|
||||||
else
|
|
||||||
icon_path="${S}/comm/mail/branding/nightly"
|
|
||||||
icon="${PN}-icon-unbranded"
|
|
||||||
|
|
||||||
newmenu "${FILESDIR}"/icon/${PN}-unbranded.desktop \
|
|
||||||
${PN}.desktop
|
|
||||||
|
|
||||||
sed -i -e "s:Mozilla\ Thunderbird:EarlyBird:g" \
|
|
||||||
"${ED}"/usr/share/applications/${PN}.desktop
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Install a 48x48 icon into /usr/share/pixmaps for legacy DEs
|
|
||||||
newicon "${icon_path}"/default48.png "${icon}".png
|
|
||||||
# Install icons for menu entry
|
|
||||||
sizes="16 22 24 32 48 256"
|
|
||||||
for size in ${sizes}; do
|
|
||||||
insinto "/usr/share/icons/hicolor/${size}x${size}/apps"
|
|
||||||
newicon -s ${size} "${icon_path}/default${size}.png" "${icon}.png"
|
|
||||||
done
|
|
||||||
|
|
||||||
# Disable built-in auto-update because we update firefox through package manager
|
|
||||||
insinto ${MOZILLA_FIVE_HOME}/distribution/
|
|
||||||
newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
|
|
||||||
|
|
||||||
# Don't install llvm-symbolizer from sys-devel/llvm package
|
|
||||||
[[ -f "${ED%/}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] && \
|
|
||||||
rm "${ED%/}${MOZILLA_FIVE_HOME}/llvm-symbolizer"
|
|
||||||
|
|
||||||
local emid
|
|
||||||
# stage extra locales for lightning and install over existing
|
|
||||||
emid='{e2fda1a4-762b-4020-b5ad-a41df1933103}'
|
|
||||||
rm -f "${ED}"/${MOZILLA_FIVE_HOME}/distribution/extensions/${emid}.xpi || die
|
|
||||||
mozlinguas_xpistage_langpacks "${BUILD_OBJ_DIR}"/dist/bin/distribution/extensions/${emid} \
|
|
||||||
"${WORKDIR}"/lightning-${MOZ_LIGHTNING_VER} lightning calendar
|
|
||||||
|
|
||||||
mkdir -p "${T}/${emid}" || die
|
|
||||||
cp -RLp -t "${T}/${emid}" "${BUILD_OBJ_DIR}"/dist/bin/distribution/extensions/${emid}/* || die
|
|
||||||
insinto ${MOZILLA_FIVE_HOME}/distribution/extensions
|
|
||||||
doins -r "${T}/${emid}"
|
|
||||||
|
|
||||||
if use lightning; then
|
|
||||||
# move lightning out of distribution/extensions and into extensions for app-global install
|
|
||||||
mkdir -p "${ED}"/${MOZILLA_FIVE_HOME}/extensions
|
|
||||||
mv "${ED}"/${MOZILLA_FIVE_HOME}/{distribution,}/extensions/${emid} || die
|
|
||||||
|
|
||||||
# stage extra locales for gdata-provider and install app-global
|
|
||||||
mozlinguas_xpistage_langpacks "${BUILD_OBJ_DIR}"/dist/xpi-stage/gdata-provider \
|
|
||||||
"${WORKDIR}"/gdata-provider-${MOZ_LIGHTNING_GDATA_VER}
|
|
||||||
emid='{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}'
|
|
||||||
mkdir -p "${T}/${emid}" || die
|
|
||||||
cp -RLp -t "${T}/${emid}" "${BUILD_OBJ_DIR}"/dist/xpi-stage/gdata-provider/* || die
|
|
||||||
|
|
||||||
# manifest.json does not allow the addon to load, put install.rdf in place
|
|
||||||
# note, version number needs to be set properly
|
|
||||||
cp -RLp -t "${T}/${emid}" "${WORKDIR}"/gdata-provider-${MOZ_LIGHTNING_GDATA_VER}/install.rdf
|
|
||||||
sed -i -e '/em:version/ s/>[^<]*</>4.1</' "${T}/${emid}"/install.rdf
|
|
||||||
|
|
||||||
insinto ${MOZILLA_FIVE_HOME}/extensions
|
|
||||||
doins -r "${T}/${emid}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# thunderbird and thunderbird-bin are identical
|
|
||||||
rm "${ED%/}"${MOZILLA_FIVE_HOME}/thunderbird-bin || die
|
|
||||||
dosym thunderbird ${MOZILLA_FIVE_HOME}/thunderbird-bin
|
|
||||||
|
|
||||||
# Required in order to use plugins and even run thunderbird on hardened.
|
|
||||||
pax-mark pm "${ED%/}"${MOZILLA_FIVE_HOME}/{thunderbird,plugin-container}
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_preinst() {
|
|
||||||
# if the apulse libs are available in MOZILLA_FIVE_HOME then apulse
|
|
||||||
# doesn't need to be forced into the LD_LIBRARY_PATH
|
|
||||||
if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
|
|
||||||
einfo "APULSE found - Generating library symlinks for sound support"
|
|
||||||
local lib
|
|
||||||
pushd "${ED}"${MOZILLA_FIVE_HOME} &>/dev/null || die
|
|
||||||
for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
|
|
||||||
# a quickpkg rolled by hand will grab symlinks as part of the package,
|
|
||||||
# so we need to avoid creating them if they already exist.
|
|
||||||
if [[ ! -L ${lib##*/} ]] ; then
|
|
||||||
ln -s "${lib}" ${lib##*/} || die
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
popd &>/dev/null || die
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
xdg_desktop_database_update
|
|
||||||
xdg_icon_cache_update
|
|
||||||
|
|
||||||
if ! use gmp-autoupdate ; then
|
|
||||||
elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
|
|
||||||
elog "installing into new profiles:"
|
|
||||||
local plugin
|
|
||||||
for plugin in "${GMP_PLUGIN_LIST[@]}" ; do
|
|
||||||
elog "\t ${plugin}"
|
|
||||||
done
|
|
||||||
elog
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
|
|
||||||
elog "Apulse was detected at merge time on this system and so it will always be"
|
|
||||||
elog "used for sound. If you wish to use pulseaudio instead please unmerge"
|
|
||||||
elog "media-sound/apulse."
|
|
||||||
elog
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postrm() {
|
|
||||||
xdg_desktop_database_update
|
|
||||||
xdg_icon_cache_update
|
|
||||||
}
|
|
||||||
@ -1,969 +0,0 @@
|
|||||||
# Copyright 1999-2020 Gentoo Authors
|
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
|
||||||
|
|
||||||
EAPI="6"
|
|
||||||
VIRTUALX_REQUIRED="pgo"
|
|
||||||
WANT_AUTOCONF="2.1"
|
|
||||||
MOZ_ESR=""
|
|
||||||
MOZ_LIGHTNING_VER="6.2.5"
|
|
||||||
MOZ_LIGHTNING_GDATA_VER="4.4.1"
|
|
||||||
|
|
||||||
PYTHON_COMPAT=( python3_{7..9} )
|
|
||||||
PYTHON_REQ_USE='ncurses,sqlite,ssl,threads(+)'
|
|
||||||
|
|
||||||
# This list can be updated using scripts/get_langs.sh from the mozilla overlay
|
|
||||||
MOZ_LANGS=(de en en-GB en-US ru)
|
|
||||||
|
|
||||||
# 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*}" # Handle rc for SRC_URI
|
|
||||||
|
|
||||||
if [[ ${MOZ_ESR} == 1 ]] ; then
|
|
||||||
# ESR releases have slightly different version numbers
|
|
||||||
MOZ_PV="${MOZ_PV}esr"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Patches
|
|
||||||
PATCHFF="firefox-78.0-patches-05"
|
|
||||||
|
|
||||||
MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/releases"
|
|
||||||
MOZ_SRC_URI="${MOZ_HTTP_URI}/${MOZ_PV}/source/${PN}-${MOZ_PV}.source.tar.xz"
|
|
||||||
MOZ_LANGPACK_PREFIX="${MOZ_PV}/linux-x86_64/xpi/"
|
|
||||||
|
|
||||||
if [[ "${PV}" == *_rc* ]]; then
|
|
||||||
MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/candidates/${MOZ_PV}-candidates/build${PV##*_rc}"
|
|
||||||
MOZ_LANGPACK_PREFIX="linux-i686/xpi/"
|
|
||||||
MOZ_SRC_URI="${MOZ_HTTP_URI}/source/${PN}-${MOZ_PV}.source.tar.xz -> $P.tar.xz"
|
|
||||||
fi
|
|
||||||
|
|
||||||
LLVM_MAX_SLOT=11
|
|
||||||
MOZCONFIG_OPTIONAL_JIT=1
|
|
||||||
|
|
||||||
inherit check-reqs eapi7-ver flag-o-matic toolchain-funcs eutils \
|
|
||||||
gnome2-utils llvm mozcoreconf-v6 pax-utils xdg-utils \
|
|
||||||
autotools mozlinguas-v2 multiprocessing virtualx
|
|
||||||
|
|
||||||
DESCRIPTION="Thunderbird Mail Client"
|
|
||||||
HOMEPAGE="https://www.mozilla.org/thunderbird"
|
|
||||||
|
|
||||||
KEYWORDS="amd64 ~arm64 ~ppc64 x86 ~amd64-linux ~x86-linux"
|
|
||||||
|
|
||||||
SLOT="0"
|
|
||||||
LICENSE="MPL-2.0 GPL-2 LGPL-2.1"
|
|
||||||
IUSE="bindist clang cpu_flags_x86_avx2 debug eme-free
|
|
||||||
+gmp-autoupdate hardened jack lightning lto cpu_flags_arm_neon
|
|
||||||
pgo pulseaudio selinux +system-av1
|
|
||||||
+system-harfbuzz +system-icu +system-jpeg +system-libevent
|
|
||||||
+system-libvpx +system-webp test wayland wifi
|
|
||||||
+jit kde cross-lto thinlto"
|
|
||||||
|
|
||||||
REQUIRED_USE="pgo? ( lto )
|
|
||||||
cross-lto? ( clang lto )
|
|
||||||
thinlto? ( lto )
|
|
||||||
kde? ( !bindist )"
|
|
||||||
|
|
||||||
RESTRICT="!bindist? ( bindist )
|
|
||||||
!test? ( test )"
|
|
||||||
|
|
||||||
PATCH_URIS=( https://dev.gentoo.org/~{whissi,polynomial-c,axs}/mozilla/patchsets/${PATCHFF}.tar.xz )
|
|
||||||
SRC_URI="${SRC_URI}
|
|
||||||
${MOZ_SRC_URI}
|
|
||||||
https://dev.gentoo.org/~axs/distfiles/lightning-${MOZ_LIGHTNING_VER}.tar.xz
|
|
||||||
lightning? ( https://dev.gentoo.org/~axs/distfiles/gdata-provider-${MOZ_LIGHTNING_GDATA_VER}.tar.xz )
|
|
||||||
${PATCH_URIS[@]}"
|
|
||||||
|
|
||||||
CDEPEND="
|
|
||||||
>=dev-libs/nss-3.54
|
|
||||||
>=dev-libs/nspr-4.25
|
|
||||||
dev-libs/atk
|
|
||||||
dev-libs/expat
|
|
||||||
>=x11-libs/cairo-1.10[X]
|
|
||||||
>=x11-libs/gtk+-2.18:2
|
|
||||||
>=x11-libs/gtk+-3.4.0:3[X]
|
|
||||||
x11-libs/gdk-pixbuf
|
|
||||||
>=x11-libs/pango-1.22.0
|
|
||||||
>=media-libs/libpng-1.6.35:0=[apng]
|
|
||||||
>=media-libs/mesa-10.2:*
|
|
||||||
media-libs/fontconfig
|
|
||||||
>=media-libs/freetype-2.4.10
|
|
||||||
kernel_linux? ( !pulseaudio? ( media-libs/alsa-lib ) )
|
|
||||||
virtual/freedesktop-icon-theme
|
|
||||||
sys-apps/dbus
|
|
||||||
dev-libs/dbus-glib
|
|
||||||
>=x11-libs/pixman-0.19.2
|
|
||||||
>=dev-libs/glib-2.26:2
|
|
||||||
>=sys-libs/zlib-1.2.3
|
|
||||||
>=dev-libs/libffi-3.0.10:=
|
|
||||||
media-video/ffmpeg
|
|
||||||
x11-libs/libX11
|
|
||||||
x11-libs/libXcomposite
|
|
||||||
x11-libs/libXdamage
|
|
||||||
x11-libs/libXext
|
|
||||||
x11-libs/libXfixes
|
|
||||||
x11-libs/libXrender
|
|
||||||
x11-libs/libXt
|
|
||||||
system-av1? (
|
|
||||||
>=media-libs/dav1d-0.3.0:=
|
|
||||||
>=media-libs/libaom-1.0.0:=
|
|
||||||
)
|
|
||||||
system-harfbuzz? (
|
|
||||||
>=media-libs/harfbuzz-2.6.8:0=
|
|
||||||
>=media-gfx/graphite2-1.3.13
|
|
||||||
)
|
|
||||||
system-icu? ( >=dev-libs/icu-67.1:= )
|
|
||||||
system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
|
|
||||||
system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
|
|
||||||
system-libvpx? ( >=media-libs/libvpx-1.8.2:0=[postproc] )
|
|
||||||
system-webp? ( >=media-libs/libwebp-1.1.0:0= )
|
|
||||||
wifi? (
|
|
||||||
kernel_linux? (
|
|
||||||
net-misc/networkmanager
|
|
||||||
)
|
|
||||||
)
|
|
||||||
jack? ( virtual/jack )
|
|
||||||
selinux? ( sec-policy/selinux-mozilla )"
|
|
||||||
|
|
||||||
RDEPEND="${CDEPEND}
|
|
||||||
jack? ( virtual/jack )
|
|
||||||
pulseaudio? (
|
|
||||||
|| (
|
|
||||||
media-sound/pulseaudio
|
|
||||||
>=media-sound/apulse-0.1.12-r4
|
|
||||||
)
|
|
||||||
)
|
|
||||||
selinux? ( sec-policy/selinux-mozilla )"
|
|
||||||
|
|
||||||
DEPEND="${CDEPEND}
|
|
||||||
app-arch/zip
|
|
||||||
app-arch/unzip
|
|
||||||
>=dev-util/cbindgen-0.14.3
|
|
||||||
>=net-libs/nodejs-10.19.0
|
|
||||||
>=sys-devel/binutils-2.30
|
|
||||||
sys-apps/findutils
|
|
||||||
virtual/pkgconfig
|
|
||||||
>=virtual/rust-1.43.0
|
|
||||||
|| (
|
|
||||||
(
|
|
||||||
sys-devel/clang:11
|
|
||||||
!clang? ( sys-devel/llvm:11 )
|
|
||||||
clang? (
|
|
||||||
=sys-devel/lld-11*
|
|
||||||
sys-devel/llvm:11
|
|
||||||
pgo? ( =sys-libs/compiler-rt-sanitizers-11*[profile] )
|
|
||||||
)
|
|
||||||
)
|
|
||||||
(
|
|
||||||
sys-devel/clang:10
|
|
||||||
!clang? ( sys-devel/llvm:10 )
|
|
||||||
clang? (
|
|
||||||
=sys-devel/lld-10*
|
|
||||||
sys-devel/llvm:10
|
|
||||||
pgo? ( =sys-libs/compiler-rt-sanitizers-10*[profile] )
|
|
||||||
)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
wayland? ( >=x11-libs/gtk+-3.11:3[wayland] )
|
|
||||||
amd64? ( >=dev-lang/yasm-1.1 virtual/opengl )
|
|
||||||
x86? ( >=dev-lang/yasm-1.1 virtual/opengl )
|
|
||||||
!system-av1? (
|
|
||||||
amd64? ( >=dev-lang/nasm-2.13 )
|
|
||||||
x86? ( >=dev-lang/nasm-2.13 )
|
|
||||||
)"
|
|
||||||
|
|
||||||
S="${WORKDIR}/${MOZ_P%b[0-9]*}"
|
|
||||||
|
|
||||||
BUILD_OBJ_DIR="${S}/tbird"
|
|
||||||
|
|
||||||
# allow GMP_PLUGIN_LIST to be set in an eclass or
|
|
||||||
# overridden in the enviromnent (advanced hackers only)
|
|
||||||
if [[ -z $GMP_PLUGIN_LIST ]] ; then
|
|
||||||
GMP_PLUGIN_LIST=( gmp-gmpopenh264 gmp-widevinecdm )
|
|
||||||
fi
|
|
||||||
|
|
||||||
llvm_check_deps() {
|
|
||||||
if ! has_version --host-root "sys-devel/clang:${LLVM_SLOT}" ; then
|
|
||||||
ewarn "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use clang ; then
|
|
||||||
if ! has_version --host-root "=sys-devel/lld-${LLVM_SLOT}*" ; then
|
|
||||||
ewarn "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use pgo ; then
|
|
||||||
if ! has_version --host-root "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
|
|
||||||
ewarn "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
einfo "Will use LLVM slot ${LLVM_SLOT}!" >&2
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_pretend() {
|
|
||||||
if [[ ${MERGE_TYPE} != binary ]] ; then
|
|
||||||
if use pgo ; then
|
|
||||||
if ! has usersandbox $FEATURES ; then
|
|
||||||
die "You must enable usersandbox as X server can not run as root!"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Ensure we have enough disk space to compile
|
|
||||||
if use pgo || use lto || use debug || use test ; then
|
|
||||||
CHECKREQS_DISK_BUILD="11G"
|
|
||||||
else
|
|
||||||
CHECKREQS_DISK_BUILD="5G"
|
|
||||||
fi
|
|
||||||
|
|
||||||
check-reqs_pkg_pretend
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_setup() {
|
|
||||||
moz_pkgsetup
|
|
||||||
|
|
||||||
if [[ ${MERGE_TYPE} != binary ]] ; then
|
|
||||||
# Ensure we have enough disk space to compile
|
|
||||||
if use pgo || use lto || use debug || use test ; then
|
|
||||||
CHECKREQS_DISK_BUILD="11G"
|
|
||||||
else
|
|
||||||
CHECKREQS_DISK_BUILD="5G"
|
|
||||||
fi
|
|
||||||
|
|
||||||
check-reqs_pkg_setup
|
|
||||||
|
|
||||||
# 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_CACHE_HOME \
|
|
||||||
XDG_SESSION_COOKIE \
|
|
||||||
XAUTHORITY
|
|
||||||
|
|
||||||
addpredict /proc/self/oom_score_adj
|
|
||||||
|
|
||||||
llvm_pkg_setup
|
|
||||||
fi
|
|
||||||
|
|
||||||
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
|
|
||||||
}
|
|
||||||
|
|
||||||
src_unpack() {
|
|
||||||
default
|
|
||||||
|
|
||||||
# Unpack language packs
|
|
||||||
mozlinguas_src_unpack
|
|
||||||
}
|
|
||||||
|
|
||||||
src_prepare() {
|
|
||||||
# Apply firefox patchset then apply thunderbird patches
|
|
||||||
rm "${WORKDIR}"/firefox/0029-bmo-1632429-enum34-and-enum-virtualenv-packages-are-.patch || die
|
|
||||||
eapply "${WORKDIR}/firefox"
|
|
||||||
pushd "${S}"/comm &>/dev/null || die
|
|
||||||
eapply "${FILESDIR}/1000_fix_gentoo_preferences_78.2.0.patch"
|
|
||||||
popd &>/dev/null || die
|
|
||||||
|
|
||||||
# Allow user to apply any additional patches without modifing ebuild
|
|
||||||
eapply_user
|
|
||||||
|
|
||||||
# Make LTO respect MAKEOPTS
|
|
||||||
sed -i \
|
|
||||||
-e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
|
|
||||||
"${S}"/build/moz.configure/lto-pgo.configure \
|
|
||||||
|| die "sed failed to set num_cores"
|
|
||||||
|
|
||||||
# Make ICU respect MAKEOPTS
|
|
||||||
sed -i \
|
|
||||||
-e "s/multiprocessing.cpu_count()/$(makeopts_jobs)/" \
|
|
||||||
"${S}"/intl/icu_sources_data.py \
|
|
||||||
|| die "sed failed to set num_cores"
|
|
||||||
|
|
||||||
# sed-in toolchain prefix
|
|
||||||
sed -i \
|
|
||||||
-e "s/objdump/${CHOST}-objdump/" \
|
|
||||||
"${S}"/python/mozbuild/mozbuild/configure/check_debug_ranges.py \
|
|
||||||
|| die "sed failed to set toolchain prefix"
|
|
||||||
|
|
||||||
# Allow user to apply any additional patches without modifing ebuild
|
|
||||||
eapply_user
|
|
||||||
|
|
||||||
einfo "Removing pre-built binaries ..."
|
|
||||||
find "${S}"/third_party -type f \( -name '*.so' -o -name '*.o' -o -name '*.la' -o -name '*.a' \) -print -delete || die
|
|
||||||
|
|
||||||
# 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
|
|
||||||
|
|
||||||
# Drop -Wl,--as-needed related manipulation for ia64 as it causes ld sefgaults, bug #582432
|
|
||||||
if use ia64 ; then
|
|
||||||
sed -i \
|
|
||||||
-e '/^OS_LIBS += no_as_needed/d' \
|
|
||||||
-e '/^OS_LIBS += as_needed/d' \
|
|
||||||
"${S}"/widget/gtk/mozgtk/gtk2/moz.build \
|
|
||||||
"${S}"/widget/gtk/mozgtk/gtk3/moz.build \
|
|
||||||
|| die "sed failed to drop --as-needed for ia64"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# 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
|
|
||||||
|
|
||||||
# Keep codebase the same even if not using official branding
|
|
||||||
sed '/^MOZ_DEV_EDITION=1/d' \
|
|
||||||
-i "${S}"/browser/branding/aurora/configure.sh || die
|
|
||||||
|
|
||||||
# rustfmt, a tool to format Rust code, is optional and not required to build Firefox.
|
|
||||||
# However, when available, an unsupported version can cause problems, bug #669548
|
|
||||||
sed -i -e "s@check_prog('RUSTFMT', add_rustup_path('rustfmt')@check_prog('RUSTFMT', add_rustup_path('rustfmt_do_not_use')@" \
|
|
||||||
"${S}"/build/moz.configure/rust.configure || die
|
|
||||||
|
|
||||||
if has_version ">=virtual/rust-1.45.0" ; then
|
|
||||||
einfo "Unbreak build with >=rust-1.45.0, bmo#1640982 ..."
|
|
||||||
sed -i \
|
|
||||||
-e 's/\(^cargo_rustc_flags +=.* \)-Clto\( \|$\)/\1/' \
|
|
||||||
"${S}/config/makefiles/rust.mk" || die
|
|
||||||
fi
|
|
||||||
|
|
||||||
# OpenSUSE-KDE patchset
|
|
||||||
einfo Applying OpenSUSE-KDE patches
|
|
||||||
use kde && for p in $(cat "${FILESDIR}/opensuse-kde-$(get_major_version)"/series);do
|
|
||||||
patch --dry-run --silent -p1 -i "${FILESDIR}/opensuse-kde-$(get_major_version)"/$p 2>/dev/null
|
|
||||||
if [ $? -eq 0 ]; then
|
|
||||||
eapply "${FILESDIR}/opensuse-kde-$(get_major_version)"/$p;
|
|
||||||
einfo +++++++++++++++++++++++++;
|
|
||||||
einfo Patch $p is APPLIED;
|
|
||||||
einfo +++++++++++++++++++++++++
|
|
||||||
else
|
|
||||||
einfo -------------------------;
|
|
||||||
einfo Patch $p is NOT applied and IGNORED;
|
|
||||||
einfo -------------------------
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
# Privacy-esr patches
|
|
||||||
einfo Applying privacy patches
|
|
||||||
for i in $(cat "${FILESDIR}/privacy-patchset-$(get_major_version)/series"); do eapply "${FILESDIR}/privacy-patchset-$(get_major_version)/$i"; done
|
|
||||||
|
|
||||||
# Debian patches
|
|
||||||
einfo "Applying Debian's patches"
|
|
||||||
for p in $(cat "${FILESDIR}/debian-patchset-$(get_major_version)"/series);do
|
|
||||||
patch --dry-run --silent -p1 -i "${FILESDIR}/debian-patchset-$(get_major_version)"/$p 2>/dev/null
|
|
||||||
if [ $? -eq 0 ]; then
|
|
||||||
eapply "${FILESDIR}/debian-patchset-$(get_major_version)"/$p;
|
|
||||||
einfo +++++++++++++++++++++++++;
|
|
||||||
einfo Patch $p is APPLIED;
|
|
||||||
einfo +++++++++++++++++++++++++
|
|
||||||
else
|
|
||||||
einfo -------------------------;
|
|
||||||
einfo Patch $p is NOT applied and IGNORED;
|
|
||||||
einfo -------------------------
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
# FreeBSD patches
|
|
||||||
einfo "Applying FreeBSD's patches"
|
|
||||||
for i in $(cat "${FILESDIR}/freebsd-patchset-$(get_major_version)/series"); do eapply "${FILESDIR}/freebsd-patchset-$(get_major_version)/$i"; done
|
|
||||||
|
|
||||||
# Fedora patches
|
|
||||||
einfo "Applying Fedora's patches"
|
|
||||||
for p in $(cat "${FILESDIR}/fedora-patchset-$(get_major_version)"/series);do
|
|
||||||
patch --dry-run --silent -p1 -i "${FILESDIR}/fedora-patchset-$(get_major_version)"/$p 2>/dev/null
|
|
||||||
if [ $? -eq 0 ]; then
|
|
||||||
eapply "${FILESDIR}/fedora-patchset-$(get_major_version)"/$p;
|
|
||||||
einfo +++++++++++++++++++++++++;
|
|
||||||
einfo Patch $p is APPLIED;
|
|
||||||
einfo +++++++++++++++++++++++++
|
|
||||||
else
|
|
||||||
einfo -------------------------;
|
|
||||||
einfo Patch $p is NOT applied and IGNORED;
|
|
||||||
einfo -------------------------
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
eapply "${FILESDIR}/${PN}-$(get_major_version)-no-dbus.patch"
|
|
||||||
|
|
||||||
# Autotools configure is now called old-configure.in
|
|
||||||
# This works because there is still a configure.in that happens to be for the
|
|
||||||
# shell wrapper configure script
|
|
||||||
eautoreconf old-configure.in
|
|
||||||
|
|
||||||
# Must run autoconf in js/src
|
|
||||||
cd "${S}"/js/src || die
|
|
||||||
eautoconf old-configure.in
|
|
||||||
|
|
||||||
# Clear checksums that present a problem
|
|
||||||
sed -i 's/\("files":{\)[^}]*/\1/' "${S}"/third_party/rust/target-lexicon-0.9.0/.cargo-checksum.json || die
|
|
||||||
}
|
|
||||||
|
|
||||||
src_configure() {
|
|
||||||
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
|
|
||||||
|
|
||||||
# Add information about TERM to output (build.log) to aid debugging
|
|
||||||
# blessings problems
|
|
||||||
if [[ -n "${TERM}" ]] ; then
|
|
||||||
einfo "TERM is set to: \"${TERM}\""
|
|
||||||
else
|
|
||||||
einfo "TERM is unset."
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use clang && ! tc-is-clang ; then
|
|
||||||
# Force clang
|
|
||||||
einfo "Enforcing the use of clang due to USE=clang ..."
|
|
||||||
CC=${CHOST}-clang
|
|
||||||
CXX=${CHOST}-clang++
|
|
||||||
strip-unsupported-flags
|
|
||||||
elif ! use clang && ! tc-is-gcc ; then
|
|
||||||
# Force gcc
|
|
||||||
einfo "Enforcing the use of gcc due to USE=-clang ..."
|
|
||||||
CC=${CHOST}-gcc
|
|
||||||
CXX=${CHOST}-g++
|
|
||||||
strip-unsupported-flags
|
|
||||||
fi
|
|
||||||
|
|
||||||
####################################
|
|
||||||
#
|
|
||||||
# mozconfig, CFLAGS and CXXFLAGS setup
|
|
||||||
#
|
|
||||||
####################################
|
|
||||||
|
|
||||||
mozconfig_init
|
|
||||||
# common config components
|
|
||||||
mozconfig_annotate 'system_libs' \
|
|
||||||
--with-system-zlib \
|
|
||||||
--with-system-bz2
|
|
||||||
|
|
||||||
# Must pass release in order to properly select linker
|
|
||||||
mozconfig_annotate 'Enable by Gentoo' --enable-release
|
|
||||||
|
|
||||||
# libclang.so is not properly detected work around issue
|
|
||||||
mozconfig_annotate '' --with-libclang-path="$(llvm-config --libdir)"
|
|
||||||
|
|
||||||
if use pgo ; then
|
|
||||||
if ! has userpriv $FEATURES ; then
|
|
||||||
eerror "Building thunderbird with USE=pgo and FEATURES=-userpriv is not supported!"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Don't let user's LTO flags clash with upstream's flags
|
|
||||||
filter-flags -flto*
|
|
||||||
|
|
||||||
if use lto ; then
|
|
||||||
local show_old_compiler_warning=
|
|
||||||
|
|
||||||
if use clang ; then
|
|
||||||
# At this stage CC is adjusted and the following check will
|
|
||||||
# will work
|
|
||||||
if [[ $(clang-major-version) -lt 7 ]] ; then
|
|
||||||
show_old_compiler_warning=1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Upstream only supports lld when using clang
|
|
||||||
mozconfig_annotate "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
|
|
||||||
else
|
|
||||||
if [[ $(gcc-major-version) -lt 8 ]] ; then
|
|
||||||
show_old_compiler_warning=1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ! use cpu_flags_x86_avx2 ; then
|
|
||||||
local _gcc_version_with_ipa_cdtor_fix="8.3"
|
|
||||||
local _current_gcc_version="$(gcc-major-version).$(gcc-minor-version)"
|
|
||||||
|
|
||||||
if ver_test "${_current_gcc_version}" -lt "${_gcc_version_with_ipa_cdtor_fix}" ; then
|
|
||||||
# due to a GCC bug, GCC will produce AVX2 instructions
|
|
||||||
# even if the CPU doesn't support AVX2, https://gcc.gnu.org/ml/gcc-patches/2018-12/msg01142.html
|
|
||||||
einfo "Disable IPA cdtor due to bug in GCC and missing AVX2 support -- triggered by USE=lto"
|
|
||||||
append-ldflags -fdisable-ipa-cdtor
|
|
||||||
else
|
|
||||||
einfo "No GCC workaround required, GCC version is already patched!"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
einfo "No GCC workaround required, system supports AVX2"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Linking only works when using ld.gold when LTO is enabled
|
|
||||||
mozconfig_annotate "forcing ld=gold due to USE=lto" --enable-linker=gold
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ -n "${show_old_compiler_warning}" ]] ; then
|
|
||||||
# Checking compiler's major version uses CC variable. Because we allow
|
|
||||||
# user to control used compiler via USE=clang flag, we cannot use
|
|
||||||
# initial value. So this is the earliest stage where we can do this check
|
|
||||||
# because pkg_pretend is not called in the main phase function sequence
|
|
||||||
# environment saving is not guaranteed so we don't know if we will have
|
|
||||||
# correct compiler until now.
|
|
||||||
ewarn ""
|
|
||||||
ewarn "USE=lto requires up-to-date compiler (>=gcc-8 or >=clang-7)."
|
|
||||||
ewarn "You are on your own -- expect build failures. Don't file bugs using that unsupported configuration!"
|
|
||||||
ewarn ""
|
|
||||||
sleep 5
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use cross-lto ; then
|
|
||||||
filter-flags -fno-plt
|
|
||||||
append-flags --target=x86_64-unknown-linux-gnu
|
|
||||||
append-ldflags --target=x86_64-unknown-linux-gnu
|
|
||||||
mozconfig_annotate '+lto-cross' --enable-lto=cross
|
|
||||||
mozconfig_annotate '+lto-cross' MOZ_LTO=1
|
|
||||||
mozconfig_annotate '+lto-cross' MOZ_LTO=cross
|
|
||||||
mozconfig_annotate '+lto-cross' MOZ_LTO_RUST=1
|
|
||||||
elif use thinlto ; then
|
|
||||||
mozconfig_annotate '+lto-thin' --enable-lto=thin
|
|
||||||
mozconfig_annotate '+lto-thin' MOZ_LTO=1
|
|
||||||
mozconfig_annotate '+lto-thin' MOZ_LTO=thin
|
|
||||||
else
|
|
||||||
mozconfig_annotate '+lto-full' --enable-lto=full
|
|
||||||
mozconfig_annotate '+lto-full' MOZ_LTO=1
|
|
||||||
mozconfig_annotate '+lto-full' MOZ_LTO=full
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use pgo ; then
|
|
||||||
mozconfig_annotate '+pgo' MOZ_PGO=1
|
|
||||||
mozconfig_annotate '+pgo-rust' MOZ_PGO_RUST=1
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
# Avoid auto-magic on linker
|
|
||||||
if use clang ; then
|
|
||||||
# This is upstream's default
|
|
||||||
mozconfig_annotate "forcing ld=lld due to USE=clang" --enable-linker=lld
|
|
||||||
elif tc-ld-is-gold ; then
|
|
||||||
mozconfig_annotate "linker is set to gold" --enable-linker=gold
|
|
||||||
else
|
|
||||||
mozconfig_annotate "linker is set to bfd" --enable-linker=bfd
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# 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,now"
|
|
||||||
|
|
||||||
# Modifications to better support ARM, bug 553364
|
|
||||||
if use cpu_flags_arm_neon ; then
|
|
||||||
mozconfig_annotate '' --with-fpu=neon
|
|
||||||
|
|
||||||
if ! tc-is-clang ; then
|
|
||||||
# thumb options aren't supported when using clang, bug 666966
|
|
||||||
mozconfig_annotate '' --with-thumb=yes
|
|
||||||
mozconfig_annotate '' --with-thumb-interwork=no
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ ${CHOST} == armv*h* ]] ; then
|
|
||||||
mozconfig_annotate '' --with-float-abi=hard
|
|
||||||
if ! use system-libvpx ; then
|
|
||||||
sed -i -e "s|softfp|hard|" \
|
|
||||||
"${S}"/media/libvpx/moz.build
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
mozconfig_use_enable !bindist official-branding
|
|
||||||
|
|
||||||
mozconfig_use_enable debug
|
|
||||||
mozconfig_use_enable debug tests
|
|
||||||
if ! use debug ; then
|
|
||||||
mozconfig_annotate 'disabled by Gentoo' --disable-debug-symbols
|
|
||||||
else
|
|
||||||
mozconfig_annotate 'enabled by Gentoo' --enable-debug-symbols
|
|
||||||
fi
|
|
||||||
# These are enabled by default in all mozilla applications
|
|
||||||
mozconfig_annotate '' --with-system-nspr
|
|
||||||
mozconfig_annotate '' --with-system-nss
|
|
||||||
mozconfig_annotate '' --x-includes="${SYSROOT}${EPREFIX}"/usr/include \
|
|
||||||
--x-libraries="${SYSROOT}${EPREFIX}"/usr/$(get_libdir)
|
|
||||||
mozconfig_annotate '' --prefix="${EPREFIX}"/usr
|
|
||||||
mozconfig_annotate '' --libdir="${EPREFIX}"/usr/$(get_libdir)
|
|
||||||
mozconfig_annotate '' --disable-crashreporter
|
|
||||||
mozconfig_annotate 'Gentoo default' --with-system-png
|
|
||||||
mozconfig_annotate '' --enable-system-ffi
|
|
||||||
mozconfig_annotate '' --with-intl-api
|
|
||||||
mozconfig_annotate '' --enable-system-pixman
|
|
||||||
# Instead of the standard --build= and --host=, mozilla uses --host instead
|
|
||||||
# of --build, and --target intstead of --host.
|
|
||||||
# Note, mozilla also has --build but it does not do what you think it does.
|
|
||||||
# Set both --target and --host as mozilla uses python to guess values otherwise
|
|
||||||
mozconfig_annotate '' --target="${CHOST}"
|
|
||||||
mozconfig_annotate '' --host="${CBUILD:-${CHOST}}"
|
|
||||||
mozconfig_annotate '' --with-toolchain-prefix="${CHOST}-"
|
|
||||||
if use system-libevent ; then
|
|
||||||
mozconfig_annotate '' --with-system-libevent="${SYSROOT}${EPREFIX}"/usr
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ! use x86 && [[ ${CHOST} != armv*h* ]] ; then
|
|
||||||
mozconfig_annotate '' --enable-rust-simd
|
|
||||||
fi
|
|
||||||
|
|
||||||
# use the gtk3 toolkit (the only one supported at this point)
|
|
||||||
# TODO: Will this result in automagic dependency on x11-libs/gtk+[wayland]?
|
|
||||||
if use wayland ; then
|
|
||||||
mozconfig_annotate '' --enable-default-toolkit=cairo-gtk3-wayland
|
|
||||||
else
|
|
||||||
mozconfig_annotate '' --enable-default-toolkit=cairo-gtk3
|
|
||||||
fi
|
|
||||||
|
|
||||||
mozconfig_use_with system-av1
|
|
||||||
mozconfig_use_with system-harfbuzz
|
|
||||||
mozconfig_use_with system-harfbuzz system-graphite2
|
|
||||||
mozconfig_use_with system-icu
|
|
||||||
mozconfig_use_with system-jpeg
|
|
||||||
mozconfig_use_with system-libvpx
|
|
||||||
mozconfig_use_with system-webp
|
|
||||||
mozconfig_use_enable pulseaudio
|
|
||||||
# force the deprecated alsa sound code if pulseaudio is disabled
|
|
||||||
if use kernel_linux && ! use pulseaudio ; then
|
|
||||||
mozconfig_annotate '-pulseaudio' --enable-alsa
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Disable built-in ccache support to avoid sandbox violation, #665420
|
|
||||||
# Use FEATURES=ccache instead!
|
|
||||||
mozconfig_annotate '' --without-ccache
|
|
||||||
sed -i -e 's/ccache_stats = None/return None/' \
|
|
||||||
python/mozbuild/mozbuild/controller/building.py || \
|
|
||||||
die "Failed to disable ccache stats call"
|
|
||||||
|
|
||||||
mozconfig_use_enable wifi necko-wifi
|
|
||||||
|
|
||||||
# enable JACK, bug 600002
|
|
||||||
mozconfig_use_enable jack
|
|
||||||
|
|
||||||
# Other tb-specific settings
|
|
||||||
mozconfig_annotate '' --with-user-appdir=.thunderbird
|
|
||||||
mozconfig_annotate '' --enable-calendar
|
|
||||||
|
|
||||||
# Enable/Disable eme support
|
|
||||||
use eme-free && mozconfig_annotate '+eme-free' --disable-eme
|
|
||||||
|
|
||||||
mozconfig_annotate '' --enable-extensions="${MEXTENSIONS}"
|
|
||||||
|
|
||||||
# allow elfhack to work in combination with unstripped binaries
|
|
||||||
# when they would normally be larger than 2GiB.
|
|
||||||
append-ldflags "-Wl,--compress-debug-sections=zlib"
|
|
||||||
|
|
||||||
if use clang ; then
|
|
||||||
# https://bugzilla.mozilla.org/show_bug.cgi?id=1482204
|
|
||||||
# https://bugzilla.mozilla.org/show_bug.cgi?id=1483822
|
|
||||||
# toolkit/moz.configure Elfhack section: target.cpu in ('arm', 'x86', 'x86_64')
|
|
||||||
local disable_elf_hack=
|
|
||||||
if use amd64 ; then
|
|
||||||
disable_elf_hack=yes
|
|
||||||
elif use x86 ; then
|
|
||||||
disable_elf_hack=yes
|
|
||||||
elif use arm ; then
|
|
||||||
disable_elf_hack=yes
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ -n ${disable_elf_hack} ]] ; then
|
|
||||||
mozconfig_annotate 'elf-hack is broken when using Clang' --disable-elf-hack
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "mk_add_options MOZ_OBJDIR=${BUILD_OBJ_DIR}" >> "${S}"/.mozconfig
|
|
||||||
echo "mk_add_options XARGS=/usr/bin/xargs" >> "${S}"/.mozconfig
|
|
||||||
|
|
||||||
#
|
|
||||||
mozconfig_annotate '' --disable-accessibility
|
|
||||||
mozconfig_annotate '' --disable-address-sanitizer
|
|
||||||
mozconfig_annotate '' --disable-address-sanitizer-reporter
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-callgrind
|
|
||||||
mozconfig_annotate '' --disable-crashreporter
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-debug
|
|
||||||
mozconfig_annotate '' --disable-debug-js-modules
|
|
||||||
mozconfig_annotate '' --disable-debug-symbols
|
|
||||||
mozconfig_annotate '' --disable-dmd
|
|
||||||
mozconfig_annotate '' --disable-dtrace
|
|
||||||
mozconfig_annotate '' --disable-dump-painting
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-gold
|
|
||||||
mozconfig_annotate '' --disable-gtest-in-build
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-instruments
|
|
||||||
mozconfig_annotate '' --disable-ipdl-tests
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-jprof
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-libproxy
|
|
||||||
mozconfig_annotate '' --disable-logrefcnt
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-memory-sanitizer
|
|
||||||
mozconfig_annotate '' --disable-mobile-optimize
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-necko-wifi
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-parental-controls
|
|
||||||
mozconfig_annotate '' --disable-perf
|
|
||||||
mozconfig_annotate '' --disable-profiling
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-reflow-perf
|
|
||||||
mozconfig_annotate '' --disable-rust-debug
|
|
||||||
mozconfig_annotate '' --disable-rust-tests
|
|
||||||
mozconfig_annotate '' --disable-system-extension-dirs
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-trace-logging
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-updater
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-valgrind
|
|
||||||
mozconfig_annotate '' --disable-verify-mar
|
|
||||||
mozconfig_annotate '' --disable-vtune
|
|
||||||
|
|
||||||
mozconfig_annotate '' --disable-warnings-as-errors
|
|
||||||
|
|
||||||
mozconfig_annotate '' --without-debug-label
|
|
||||||
mozconfig_annotate '' --without-google-location-service-api-keyfile
|
|
||||||
mozconfig_annotate '' --without-google-safebrowsing-api-keyfile
|
|
||||||
|
|
||||||
mozconfig_annotate '' MOZ_DATA_REPORTING=
|
|
||||||
mozconfig_annotate '' MOZ_LOGGING=
|
|
||||||
mozconfig_annotate '' MOZ_PAY=
|
|
||||||
mozconfig_annotate '' MOZ_SERVICES_HEALTHREPORTER=
|
|
||||||
mozconfig_annotate '' MOZ_SERVICES_METRICS=
|
|
||||||
mozconfig_annotate '' MOZ_TELEMETRY_REPORTING=
|
|
||||||
mozconfig_annotate '' RUSTFLAGS=-Ctarget-cpu=native
|
|
||||||
mozconfig_annotate '' RUSTFLAGS=-Copt-level=3
|
|
||||||
mozconfig_annotate '' RUSTFLAGS=-Cdebuginfo=0
|
|
||||||
|
|
||||||
|
|
||||||
# Enable good features
|
|
||||||
mozconfig_annotate '' --enable-install-strip
|
|
||||||
mozconfig_annotate '' --enable-rust-simd
|
|
||||||
mozconfig_annotate '' --enable-strip
|
|
||||||
|
|
||||||
echo "export MOZ_DATA_REPORTING=" >> "${S}"/.mozconfig
|
|
||||||
echo "export MOZ_DEVICES=" >> "${S}"/.mozconfig
|
|
||||||
echo "export MOZ_LOGGING=" >> "${S}"/.mozconfig
|
|
||||||
echo "export MOZ_PAY=" >> "${S}"/.mozconfig
|
|
||||||
echo "export MOZ_SERVICES_HEALTHREPORTER=" >> "${S}"/.mozconfig
|
|
||||||
echo "export MOZ_SERVICES_METRICS=" >> "${S}"/.mozconfig
|
|
||||||
echo "export MOZ_TELEMETRY_REPORTING=" >> "${S}"/.mozconfig
|
|
||||||
echo "export RUSTFLAGS='-Ctarget-cpu=native -Copt-level=3 -Cdebuginfo=0'" >> "${S}"/.mozconfig
|
|
||||||
#
|
|
||||||
|
|
||||||
# Finalize and report settings
|
|
||||||
mozconfig_final
|
|
||||||
|
|
||||||
mkdir -p "${S}"/third_party/rust/libloading/.deps
|
|
||||||
|
|
||||||
# workaround for funky/broken upstream configure...
|
|
||||||
SHELL="${SHELL:-${EPREFIX}/bin/bash}" MOZ_NOSPAM=1 \
|
|
||||||
./mach configure || die
|
|
||||||
}
|
|
||||||
|
|
||||||
src_compile() {
|
|
||||||
local _virtx=
|
|
||||||
if use pgo ; then
|
|
||||||
_virtx=virtx
|
|
||||||
|
|
||||||
# Reset and cleanup environment variables used by GNOME/XDG
|
|
||||||
gnome2_environment_reset
|
|
||||||
|
|
||||||
addpredict /root
|
|
||||||
fi
|
|
||||||
|
|
||||||
GDK_BACKEND=x11 \
|
|
||||||
MOZ_MAKE_FLAGS="${MAKEOPTS} -O" \
|
|
||||||
SHELL="${SHELL:-${EPREFIX}/bin/bash}" \
|
|
||||||
MOZ_NOSPAM=1 \
|
|
||||||
${_virtx} \
|
|
||||||
./mach build --verbose \
|
|
||||||
|| die
|
|
||||||
}
|
|
||||||
|
|
||||||
src_install() {
|
|
||||||
MOZILLA_FIVE_HOME="/usr/$(get_libdir)/${PN}"
|
|
||||||
cd "${BUILD_OBJ_DIR}" || die
|
|
||||||
|
|
||||||
# Pax mark xpcshell for hardened support, only used for startupcache creation.
|
|
||||||
pax-mark m "${BUILD_OBJ_DIR}"/dist/bin/xpcshell
|
|
||||||
|
|
||||||
# Copy our preference before omnijar is created.
|
|
||||||
cp "${FILESDIR}"/thunderbird-gentoo-default-prefs.js-2 \
|
|
||||||
"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" \
|
|
||||||
|| die
|
|
||||||
|
|
||||||
# set dictionary path, to use system hunspell
|
|
||||||
echo "pref(\"spellchecker.dictionary_path\", \"${EPREFIX}/usr/share/myspell\");" \
|
|
||||||
>>"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" || die
|
|
||||||
|
|
||||||
# force the graphite pref if system-harfbuzz is enabled, since the pref cant disable it
|
|
||||||
if use system-harfbuzz ; then
|
|
||||||
echo "sticky_pref(\"gfx.font_rendering.graphite.enabled\",true);" \
|
|
||||||
>>"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" || die
|
|
||||||
fi
|
|
||||||
|
|
||||||
# force cairo as the canvas renderer on platforms without skia support
|
|
||||||
if [[ $(tc-endian) == "big" ]] ; then
|
|
||||||
echo "sticky_pref(\"gfx.canvas.azure.backends\",\"cairo\");" \
|
|
||||||
>>"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" || die
|
|
||||||
echo "sticky_pref(\"gfx.content.azure.backends\",\"cairo\");" \
|
|
||||||
>>"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" || die
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "pref(\"extensions.autoDisableScopes\", 3);" >> \
|
|
||||||
"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" \
|
|
||||||
|| die
|
|
||||||
|
|
||||||
if ! use gmp-autoupdate ; then
|
|
||||||
local plugin
|
|
||||||
for plugin in "${GMP_PLUGIN_LIST[@]}" ; do
|
|
||||||
echo "pref(\"media.${plugin}.autoupdate\", false);" >> \
|
|
||||||
"${BUILD_OBJ_DIR}/dist/bin/defaults/pref/all-gentoo.js" \
|
|
||||||
|| die
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
|
|
||||||
cd "${S}"
|
|
||||||
MOZ_MAKE_FLAGS="${MAKEOPTS}" SHELL="${SHELL:-${EPREFIX}/bin/bash}" MOZ_NOSPAM=1 \
|
|
||||||
DESTDIR="${D}" ./mach install || die
|
|
||||||
|
|
||||||
# Install language packs
|
|
||||||
MOZEXTENSION_TARGET="distribution/extensions" MOZ_INSTALL_L10N_XPIFILE="1" mozlinguas_src_install
|
|
||||||
|
|
||||||
local size sizes icon_path icon
|
|
||||||
if ! use bindist; then
|
|
||||||
icon_path="${S}/comm/mail/branding/thunderbird"
|
|
||||||
icon="${PN}-icon"
|
|
||||||
|
|
||||||
domenu "${FILESDIR}"/icon/${PN}.desktop
|
|
||||||
else
|
|
||||||
icon_path="${S}/comm/mail/branding/nightly"
|
|
||||||
icon="${PN}-icon-unbranded"
|
|
||||||
|
|
||||||
newmenu "${FILESDIR}"/icon/${PN}-unbranded.desktop \
|
|
||||||
${PN}.desktop
|
|
||||||
|
|
||||||
sed -i -e "s:Mozilla\ Thunderbird:EarlyBird:g" \
|
|
||||||
"${ED}"/usr/share/applications/${PN}.desktop
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Install a 48x48 icon into /usr/share/pixmaps for legacy DEs
|
|
||||||
newicon "${icon_path}"/default48.png "${icon}".png
|
|
||||||
# Install icons for menu entry
|
|
||||||
sizes="16 22 24 32 48 256"
|
|
||||||
for size in ${sizes}; do
|
|
||||||
insinto "/usr/share/icons/hicolor/${size}x${size}/apps"
|
|
||||||
newicon -s ${size} "${icon_path}/default${size}.png" "${icon}.png"
|
|
||||||
done
|
|
||||||
|
|
||||||
# Disable built-in auto-update because we update firefox through package manager
|
|
||||||
insinto ${MOZILLA_FIVE_HOME}/distribution/
|
|
||||||
newins "${FILESDIR}"/disable-auto-update.policy.json policies.json
|
|
||||||
|
|
||||||
# Don't install llvm-symbolizer from sys-devel/llvm package
|
|
||||||
[[ -f "${ED%/}${MOZILLA_FIVE_HOME}/llvm-symbolizer" ]] && \
|
|
||||||
rm "${ED%/}${MOZILLA_FIVE_HOME}/llvm-symbolizer"
|
|
||||||
|
|
||||||
local emid
|
|
||||||
# stage extra locales for lightning and install over existing
|
|
||||||
emid='{e2fda1a4-762b-4020-b5ad-a41df1933103}'
|
|
||||||
rm -f "${ED}"/${MOZILLA_FIVE_HOME}/distribution/extensions/${emid}.xpi || die
|
|
||||||
mozlinguas_xpistage_langpacks "${BUILD_OBJ_DIR}"/dist/bin/distribution/extensions/${emid} \
|
|
||||||
"${WORKDIR}"/lightning-${MOZ_LIGHTNING_VER} lightning calendar
|
|
||||||
|
|
||||||
mkdir -p "${T}/${emid}" || die
|
|
||||||
cp -RLp -t "${T}/${emid}" "${BUILD_OBJ_DIR}"/dist/bin/distribution/extensions/${emid}/* || die
|
|
||||||
insinto ${MOZILLA_FIVE_HOME}/distribution/extensions
|
|
||||||
doins -r "${T}/${emid}"
|
|
||||||
|
|
||||||
if use lightning; then
|
|
||||||
# move lightning out of distribution/extensions and into extensions for app-global install
|
|
||||||
mkdir -p "${ED}"/${MOZILLA_FIVE_HOME}/extensions
|
|
||||||
mv "${ED}"/${MOZILLA_FIVE_HOME}/{distribution,}/extensions/${emid} || die
|
|
||||||
|
|
||||||
# stage extra locales for gdata-provider and install app-global
|
|
||||||
mozlinguas_xpistage_langpacks "${BUILD_OBJ_DIR}"/dist/xpi-stage/gdata-provider \
|
|
||||||
"${WORKDIR}"/gdata-provider-${MOZ_LIGHTNING_GDATA_VER}
|
|
||||||
emid='{a62ef8ec-5fdc-40c2-873c-223b8a6925cc}'
|
|
||||||
mkdir -p "${T}/${emid}" || die
|
|
||||||
cp -RLp -t "${T}/${emid}" "${BUILD_OBJ_DIR}"/dist/xpi-stage/gdata-provider/* || die
|
|
||||||
|
|
||||||
# manifest.json does not allow the addon to load, put install.rdf in place
|
|
||||||
# note, version number needs to be set properly
|
|
||||||
cp -RLp -t "${T}/${emid}" "${WORKDIR}"/gdata-provider-${MOZ_LIGHTNING_GDATA_VER}/install.rdf
|
|
||||||
sed -i -e '/em:version/ s/>[^<]*</>4.1</' "${T}/${emid}"/install.rdf
|
|
||||||
|
|
||||||
insinto ${MOZILLA_FIVE_HOME}/extensions
|
|
||||||
doins -r "${T}/${emid}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# thunderbird and thunderbird-bin are identical
|
|
||||||
rm "${ED%/}"${MOZILLA_FIVE_HOME}/thunderbird-bin || die
|
|
||||||
dosym thunderbird ${MOZILLA_FIVE_HOME}/thunderbird-bin
|
|
||||||
|
|
||||||
# Required in order to use plugins and even run thunderbird on hardened.
|
|
||||||
pax-mark pm "${ED%/}"${MOZILLA_FIVE_HOME}/{thunderbird,plugin-container}
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_preinst() {
|
|
||||||
# if the apulse libs are available in MOZILLA_FIVE_HOME then apulse
|
|
||||||
# doesn't need to be forced into the LD_LIBRARY_PATH
|
|
||||||
if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
|
|
||||||
einfo "APULSE found - Generating library symlinks for sound support"
|
|
||||||
local lib
|
|
||||||
pushd "${ED}"${MOZILLA_FIVE_HOME} &>/dev/null || die
|
|
||||||
for lib in ../apulse/libpulse{.so{,.0},-simple.so{,.0}} ; do
|
|
||||||
# a quickpkg rolled by hand will grab symlinks as part of the package,
|
|
||||||
# so we need to avoid creating them if they already exist.
|
|
||||||
if [[ ! -L ${lib##*/} ]] ; then
|
|
||||||
ln -s "${lib}" ${lib##*/} || die
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
popd &>/dev/null || die
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postinst() {
|
|
||||||
xdg_desktop_database_update
|
|
||||||
xdg_icon_cache_update
|
|
||||||
|
|
||||||
if ! use gmp-autoupdate ; then
|
|
||||||
elog "USE='-gmp-autoupdate' has disabled the following plugins from updating or"
|
|
||||||
elog "installing into new profiles:"
|
|
||||||
local plugin
|
|
||||||
for plugin in "${GMP_PLUGIN_LIST[@]}" ; do
|
|
||||||
elog "\t ${plugin}"
|
|
||||||
done
|
|
||||||
elog
|
|
||||||
fi
|
|
||||||
|
|
||||||
if use pulseaudio && has_version ">=media-sound/apulse-0.1.12-r4" ; then
|
|
||||||
elog "Apulse was detected at merge time on this system and so it will always be"
|
|
||||||
elog "used for sound. If you wish to use pulseaudio instead please unmerge"
|
|
||||||
elog "media-sound/apulse."
|
|
||||||
elog
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pkg_postrm() {
|
|
||||||
xdg_desktop_database_update
|
|
||||||
xdg_icon_cache_update
|
|
||||||
}
|
|
||||||
3
net-fs/mc3/Manifest
Normal file
3
net-fs/mc3/Manifest
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
DIST mc-2021.03.23.05.46.11-deps.tar.xz 400078460 SHA256 6afe77997eb99706f634109ed6776eb72c9adfde9690d5d7430f34731e907694 SHA512 5970f19d563eb948fbef64e82677a8c29b35b925d41ae1682241771adc2153096de57ecb6bb2b3e7e21aa800158a8dc68922e1b177df6f96882adba658f80e6b WHIRLPOOL 239e8765bbbbcc04e78cc221bf53d724abd67150565283bf00736ddabc27713e9b102af41632a27bd71628939e0c695eaf7ef4395197c241c17af0de7c3c5c4e
|
||||||
|
DIST mc-2021.03.23.05.46.11.tar.gz 438008 SHA256 3045dacd789a130d46e18303ae10d455af655dd34d4f5161f8508d679b0756e8 SHA512 34dcb4d5c8c98ba9edf3791a01914bef0bce29c5939a7486d79e1c7949e3169897c7db4c718cd7329e507cd9402dd6cdf142fe1c426ea5fb5d6aadd0cc248f7c WHIRLPOOL 44aa61752537a6d7e0965461ca29d016b7e9bd3deeab393c51b59e695cd24c8b4fe0d40a51c1af9dd43bfb01dc8fea0e98e51a763609a004f4b5f1f28f0691a1
|
||||||
|
EBUILD mc3-2021.03.23.05.46.11.ebuild 1129 SHA256 297074265e079e81cc5479d5b0fb386aab58e0fb89ef6a337e59deda405c785b SHA512 38b589b4852344dc84893680c4987f5317c176ef6176731c1f801d028c1bf79c8bfa661c2aba45c9b89f8a1b989b778976eefdcbc454d160ac1f09a4a67cacca WHIRLPOOL 3901e3a535e5f6793c37dc0905acbdc5893250589f2f4bbfc50451b6d8583e1b4316a636d367498fa604c6cd06f4d3480a4c8c9e12a2d83427ff587604e860a7
|
||||||
45
net-fs/mc3/mc3-2021.03.23.05.46.11.ebuild
Normal file
45
net-fs/mc3/mc3-2021.03.23.05.46.11.ebuild
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
# Copyright 1999-2022 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=7
|
||||||
|
|
||||||
|
inherit go-module
|
||||||
|
|
||||||
|
REAL_P="${P//mc3/mc}"
|
||||||
|
REAL_PN="${PN//mc3/mc}"
|
||||||
|
MY_PV="$(ver_cut 1-3)T$(ver_cut 4-7)Z"
|
||||||
|
MY_PV=${MY_PV//./-}
|
||||||
|
EGIT_COMMIT=1513d76ca9d3a2cddda40d0e6e50be164b894889
|
||||||
|
|
||||||
|
DESCRIPTION="Minio client provides alternatives for ls, cat on cloud storage and filesystems"
|
||||||
|
HOMEPAGE="https://github.com/minio/mc"
|
||||||
|
SRC_URI="https://github.com/minio/mc/archive/RELEASE.${MY_PV}.tar.gz -> ${REAL_P}.tar.gz"
|
||||||
|
SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${REAL_P}-deps.tar.xz"
|
||||||
|
|
||||||
|
LICENSE="Apache-2.0 BSD MIT MPL-2.0"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="amd64"
|
||||||
|
|
||||||
|
RDEPEND=""
|
||||||
|
|
||||||
|
S="${WORKDIR}/${REAL_PN}-RELEASE.${MY_PV}"
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
default
|
||||||
|
sed -i \
|
||||||
|
-e "s/time.Now().UTC().Format(time.RFC3339)/\"${VERSION}\"/" \
|
||||||
|
-e "s/-s -w//" \
|
||||||
|
-e "/time/d" \
|
||||||
|
-e "s/+ commitID()/+ \"${EGIT_COMMIT}\"/" \
|
||||||
|
buildscripts/gen-ldflags.go || die
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
MC_RELEASE="${MY_PV}" \
|
||||||
|
go build -trimpath --ldflags "$(go run buildscripts/gen-ldflags.go)" -o ${PN} || die
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
dobin mc3
|
||||||
|
dodoc -r README.md CONTRIBUTING.md docs
|
||||||
|
}
|
||||||
@ -1,4 +1,13 @@
|
|||||||
AUX 50nxplayer 41 SHA256 15d0e2d50df089c0d01db7579cdb25898e7111bd67b7bb1327de604b46d001df SHA512 2ca064c30ac4934403150e07488eb17469815d958056c7da913c5dbaf94f7b5cddfbda4c3b240ef62337960ccdba44b535f174f20c8a1643bb8a2738d92ee6b0 WHIRLPOOL 0569937dfb277ee33d7e4ee7f963d5a3ab9056d1f4a1a35be9bd1086b138365fd7f2ee8a59c564f9ecf2a6b85777d59d52e34c5f1af4cd79e2cae0522d1b9793
|
AUX 50nxplayer 41 SHA256 15d0e2d50df089c0d01db7579cdb25898e7111bd67b7bb1327de604b46d001df SHA512 2ca064c30ac4934403150e07488eb17469815d958056c7da913c5dbaf94f7b5cddfbda4c3b240ef62337960ccdba44b535f174f20c8a1643bb8a2738d92ee6b0 WHIRLPOOL 0569937dfb277ee33d7e4ee7f963d5a3ab9056d1f4a1a35be9bd1086b138365fd7f2ee8a59c564f9ecf2a6b85777d59d52e34c5f1af4cd79e2cae0522d1b9793
|
||||||
DIST nomachine-enterprise-client_7.10.1_1_i686.tar.gz 35365174 SHA256 3afdfa337d11496167ebfc41edf6e92ddf19f3c4c3314a78be866b5698d29f67 SHA512 e7cd96e7847b2573cc7b3070093820d903aca85b31d9662348d9ca2b1f9065c2ac065cd64a5c190543561189850e582bbc4a414757cce3feb55edb6c868e7dd5 WHIRLPOOL 96622f21a33875500fd17055bc36b36c4ddc0b62cee81f073c0332d6e85ca7d384824688e3ca4906f52d61eea16f26f13cf51d05ea9310a9720fc1045e123985
|
DIST nomachine-enterprise-client_7.10.1_1_i686.tar.gz 35365174 SHA256 3afdfa337d11496167ebfc41edf6e92ddf19f3c4c3314a78be866b5698d29f67 SHA512 e7cd96e7847b2573cc7b3070093820d903aca85b31d9662348d9ca2b1f9065c2ac065cd64a5c190543561189850e582bbc4a414757cce3feb55edb6c868e7dd5 WHIRLPOOL 96622f21a33875500fd17055bc36b36c4ddc0b62cee81f073c0332d6e85ca7d384824688e3ca4906f52d61eea16f26f13cf51d05ea9310a9720fc1045e123985
|
||||||
DIST nomachine-enterprise-client_7.10.1_1_x86_64.tar.gz 37052246 SHA256 d8fa1fb80792e2d429592c24ca9100ddd3c16796cb321426674bd7a7163c84c3 SHA512 fbb0ac0378dc4ae64aa7872e8302b8bc9b5f16a91b06a6bad2bae305b20e05f573b2bd945c8a4ba865203243f59694d102a02c2801cfb4850298c71ffcdc8d5d WHIRLPOOL c985a0f93d68f76eddc6e78a8645282b8fb6b63a3ac51c1478071cc938a58fb604551273c3d7d54f90927509193445f3b66a9277656c1225ea4eeed898d47c55
|
DIST nomachine-enterprise-client_7.10.1_1_x86_64.tar.gz 37052246 SHA256 d8fa1fb80792e2d429592c24ca9100ddd3c16796cb321426674bd7a7163c84c3 SHA512 fbb0ac0378dc4ae64aa7872e8302b8bc9b5f16a91b06a6bad2bae305b20e05f573b2bd945c8a4ba865203243f59694d102a02c2801cfb4850298c71ffcdc8d5d WHIRLPOOL c985a0f93d68f76eddc6e78a8645282b8fb6b63a3ac51c1478071cc938a58fb604551273c3d7d54f90927509193445f3b66a9277656c1225ea4eeed898d47c55
|
||||||
|
DIST nomachine-enterprise-client_8.4.2_2_i686.tar.gz 149522 SHA256 0acfb6a99a146a7cfbc0f82acbf398cd8677c28fbbbe91d9707cf3ae391adcf3 SHA512 96df8994f28f7cd92e22b37b3c63c0c9ddeede2cdbc1fdd7b810ce636fca6e90fd7a45e41be57e895a046ca7ec7659bc4a0f5d645b098170d019c072cd799cfb WHIRLPOOL ebb2808ca585d6ac6669c3ac192373eacd9c93b726af971a4c56c64a04d007bbb865ba765efaac30d51cc2a471ca66c7cad259bfdfcb4a8cad6d01950a99075d
|
||||||
|
DIST nomachine-enterprise-client_8.4.2_2_x86_64.tar.gz 44454794 SHA256 2871a6f9531bf1691b5b2b73a942083b8304e9d514b6dfffad0f39c351eca19a SHA512 ed76f336d238f9a7938c8896916d7efe1d25f15d5fbc5e92dd2b8eeb252ef05f7bfc51ab0f663c6b74220fcc7137a7f282253c1ae3ef605c85983c691d225e60 WHIRLPOOL 2dcb91646bec08b0a306738fccb40ac1cb8dd86024272a5bbd93f15f0c7c5330e6f2ebb7766c46c02ebf81697efbb4640c1a170ed2ea4862f8e61ef1adbee9dc
|
||||||
|
DIST nomachine-enterprise-client_8.6.1_3_i686.tar.gz 43016957 SHA256 4c678a7dca91e1f5202c27ad28b7db5ca520e308abb06c93ae99b8a37dfadaa1 SHA512 63c0de405a90cf50a823c9873bd7201d8590137522518bd5d63de854427da3d781c93dfdd58839c58d834426605deb650cf14a6f2f92e50629ae0b037e889b78 WHIRLPOOL 0224aef73a6272d757d316797ccf55702d245c386b31b5d95b42e6b2865746281e68408008fbe6dc9af9072b997ebd227dc93f5a423ab1bf8580cb3dbccfd699
|
||||||
|
DIST nomachine-enterprise-client_8.6.1_3_x86_64.tar.gz 44461029 SHA256 5b340834f48a375ea469a76d0892dbc46684a0c92648e996b5c85ab8d600ae30 SHA512 beced79d4c94a1b9d1b3b3c21a3240b02cdce824a835954183a7744a67a07f1d604005cca4186d09d2d26cdec7ea752fe2c32fc33ce8e7c37ce6acde9a562ba7 WHIRLPOOL 48e63dca3e513d4cba2485e0c733d7ad642c654edba7ccb53f476ea456bda07d1dcdcf8fc79727fa777c0311a80f72dcf5b39daf6ff052aa7da94506ed016ef3
|
||||||
|
DIST nomachine-enterprise-client_8.8.1_1_i686.tar.gz 43018230 SHA256 310cd0efffdc8a283b41ef5cdb9b6df4fbd44b7b21088caccea79897803f4d32 SHA512 c125174091da8bad1650c2e1eda691f2faef9efce6083a5d803f96fff51b9c38b4dfd8872483882df9bb30abc464b205625ed5ba74411ed2becc6e7bf8f2229f WHIRLPOOL 1d0aa9f9eb3cce285dd9d1e7b9e354b1909226fd66432dd31f2a82392ce03e18b7a511eb812b032d38bbb705179b1f5d2041999e668f9d3593ce47f0ec64e181
|
||||||
|
DIST nomachine-enterprise-client_8.8.1_1_x86_64.tar.gz 44462201 SHA256 fa9a9b215bfb7874e7869953c33119b516de8865eaf6e1b0fe05b5e56435a414 SHA512 a8d4b39462b934aec1861821db694bdb85005c9539c961dc6c5b2f533e7cd4569f59de72c7f99a5d57bb4970b6d8f3b90a881dfe4b8f59236b3397dda7ec2149 WHIRLPOOL e58f1325eb82ec90f6a93d0bd60ed98724470a2b8b3bd88c95b1cda4414ba22ae94ce572a4c058d66da2be989bb511320a744434de1f3ed2427697a1eaa92985
|
||||||
EBUILD nxplayer-7.10.1.1.ebuild 896 SHA256 f9c2a3f4db7a94937102a75c060858668a99385715806b89651d7696ae0db6a4 SHA512 6a7795da4b8ef521ef247c4aa9f73b3c6150c5aab028406e4d526ae5419889344c5d867a6b9133b3073ddab942e30b50397881dd7a8b6c08f75f1fe693a8f9eb WHIRLPOOL 3746a5fa23aa7209415d758ff68fa625fdfb3a5a2082647d9e9830a9bcac2b56cc5839b58c4186da0e93c9d9f4dccf6020223687c3aee57600fc33bc6a7d1057
|
EBUILD nxplayer-7.10.1.1.ebuild 896 SHA256 f9c2a3f4db7a94937102a75c060858668a99385715806b89651d7696ae0db6a4 SHA512 6a7795da4b8ef521ef247c4aa9f73b3c6150c5aab028406e4d526ae5419889344c5d867a6b9133b3073ddab942e30b50397881dd7a8b6c08f75f1fe693a8f9eb WHIRLPOOL 3746a5fa23aa7209415d758ff68fa625fdfb3a5a2082647d9e9830a9bcac2b56cc5839b58c4186da0e93c9d9f4dccf6020223687c3aee57600fc33bc6a7d1057
|
||||||
|
EBUILD nxplayer-8.4.2.2.ebuild 999 SHA256 d1a0fdf79b366061434b80e94f867dc8dec594b175a7be9a005ce585299225ee SHA512 72c6155f0164dfbcda2d3334ad749e133489c86989125fff7d9d171e5909c5290ecf622d59b50752285450393dbf8958ba1ae74611f17b350c8924372d95f27a WHIRLPOOL ea1353e27d2c91c2ad736cbbc508834670802539691774eed8fbd5cc62f56a8045f50e4ccc86bf95979a30d7a2b6258e357b5345dc986de1e106f2cf29d41542
|
||||||
|
EBUILD nxplayer-8.6.1.3.ebuild 999 SHA256 d1a0fdf79b366061434b80e94f867dc8dec594b175a7be9a005ce585299225ee SHA512 72c6155f0164dfbcda2d3334ad749e133489c86989125fff7d9d171e5909c5290ecf622d59b50752285450393dbf8958ba1ae74611f17b350c8924372d95f27a WHIRLPOOL ea1353e27d2c91c2ad736cbbc508834670802539691774eed8fbd5cc62f56a8045f50e4ccc86bf95979a30d7a2b6258e357b5345dc986de1e106f2cf29d41542
|
||||||
|
EBUILD nxplayer-8.8.1.1.ebuild 999 SHA256 d1a0fdf79b366061434b80e94f867dc8dec594b175a7be9a005ce585299225ee SHA512 72c6155f0164dfbcda2d3334ad749e133489c86989125fff7d9d171e5909c5290ecf622d59b50752285450393dbf8958ba1ae74611f17b350c8924372d95f27a WHIRLPOOL ea1353e27d2c91c2ad736cbbc508834670802539691774eed8fbd5cc62f56a8045f50e4ccc86bf95979a30d7a2b6258e357b5345dc986de1e106f2cf29d41542
|
||||||
|
|||||||
38
net-misc/nxplayer/nxplayer-8.4.2.2.ebuild
Normal file
38
net-misc/nxplayer/nxplayer-8.4.2.2.ebuild
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
# Copyright 1999-2021 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
MY_P="nomachine-enterprise-client_$(ver_cut 1-3)_$(ver_cut 4)"
|
||||||
|
|
||||||
|
DESCRIPTION="Client for NoMachine remote servers"
|
||||||
|
HOMEPAGE="https://www.nomachine.com"
|
||||||
|
SRC_URI="amd64? ( https://download.nomachine.com/download/$(ver_cut 1-2)/Linux/${MY_P}_x86_64.tar.gz )
|
||||||
|
x86? ( https://download.nomachine.com/download/$(ver_cut 1-2)/Linux/${MY_P}_i686.tar.gz )"
|
||||||
|
S="${WORKDIR}"/NX/etc/NX/player/packages
|
||||||
|
|
||||||
|
#https://download.nomachine.com/download/8.4/Linux/nomachine-enterprise-client_8.4.2_2_x86_64.tar.gz
|
||||||
|
|
||||||
|
LICENSE="nomachine"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="-* amd64 ~x86"
|
||||||
|
|
||||||
|
RDEPEND="
|
||||||
|
|| (
|
||||||
|
sys-libs/libxcrypt[compat]
|
||||||
|
sys-libs/glibc[crypt(+)]
|
||||||
|
)
|
||||||
|
dev-libs/glib:2
|
||||||
|
dev-libs/openssl:0
|
||||||
|
"
|
||||||
|
|
||||||
|
QA_PREBUILT="*"
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
dodir /opt
|
||||||
|
tar xozf nxrunner.tar.gz -C "${ED}"/opt || die
|
||||||
|
tar xozf nxplayer.tar.gz -C "${ED}"/opt || die
|
||||||
|
|
||||||
|
doenvd "${FILESDIR}"/50nxplayer
|
||||||
|
dosym -r /opt/NX/bin/nxplayer /opt/bin/nxplayer
|
||||||
|
}
|
||||||
38
net-misc/nxplayer/nxplayer-8.6.1.3.ebuild
Normal file
38
net-misc/nxplayer/nxplayer-8.6.1.3.ebuild
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
# Copyright 1999-2021 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
MY_P="nomachine-enterprise-client_$(ver_cut 1-3)_$(ver_cut 4)"
|
||||||
|
|
||||||
|
DESCRIPTION="Client for NoMachine remote servers"
|
||||||
|
HOMEPAGE="https://www.nomachine.com"
|
||||||
|
SRC_URI="amd64? ( https://download.nomachine.com/download/$(ver_cut 1-2)/Linux/${MY_P}_x86_64.tar.gz )
|
||||||
|
x86? ( https://download.nomachine.com/download/$(ver_cut 1-2)/Linux/${MY_P}_i686.tar.gz )"
|
||||||
|
S="${WORKDIR}"/NX/etc/NX/player/packages
|
||||||
|
|
||||||
|
#https://download.nomachine.com/download/8.4/Linux/nomachine-enterprise-client_8.4.2_2_x86_64.tar.gz
|
||||||
|
|
||||||
|
LICENSE="nomachine"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="-* amd64 ~x86"
|
||||||
|
|
||||||
|
RDEPEND="
|
||||||
|
|| (
|
||||||
|
sys-libs/libxcrypt[compat]
|
||||||
|
sys-libs/glibc[crypt(+)]
|
||||||
|
)
|
||||||
|
dev-libs/glib:2
|
||||||
|
dev-libs/openssl:0
|
||||||
|
"
|
||||||
|
|
||||||
|
QA_PREBUILT="*"
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
dodir /opt
|
||||||
|
tar xozf nxrunner.tar.gz -C "${ED}"/opt || die
|
||||||
|
tar xozf nxplayer.tar.gz -C "${ED}"/opt || die
|
||||||
|
|
||||||
|
doenvd "${FILESDIR}"/50nxplayer
|
||||||
|
dosym -r /opt/NX/bin/nxplayer /opt/bin/nxplayer
|
||||||
|
}
|
||||||
38
net-misc/nxplayer/nxplayer-8.8.1.1.ebuild
Normal file
38
net-misc/nxplayer/nxplayer-8.8.1.1.ebuild
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
# Copyright 1999-2021 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=8
|
||||||
|
|
||||||
|
MY_P="nomachine-enterprise-client_$(ver_cut 1-3)_$(ver_cut 4)"
|
||||||
|
|
||||||
|
DESCRIPTION="Client for NoMachine remote servers"
|
||||||
|
HOMEPAGE="https://www.nomachine.com"
|
||||||
|
SRC_URI="amd64? ( https://download.nomachine.com/download/$(ver_cut 1-2)/Linux/${MY_P}_x86_64.tar.gz )
|
||||||
|
x86? ( https://download.nomachine.com/download/$(ver_cut 1-2)/Linux/${MY_P}_i686.tar.gz )"
|
||||||
|
S="${WORKDIR}"/NX/etc/NX/player/packages
|
||||||
|
|
||||||
|
#https://download.nomachine.com/download/8.4/Linux/nomachine-enterprise-client_8.4.2_2_x86_64.tar.gz
|
||||||
|
|
||||||
|
LICENSE="nomachine"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="-* amd64 ~x86"
|
||||||
|
|
||||||
|
RDEPEND="
|
||||||
|
|| (
|
||||||
|
sys-libs/libxcrypt[compat]
|
||||||
|
sys-libs/glibc[crypt(+)]
|
||||||
|
)
|
||||||
|
dev-libs/glib:2
|
||||||
|
dev-libs/openssl:0
|
||||||
|
"
|
||||||
|
|
||||||
|
QA_PREBUILT="*"
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
dodir /opt
|
||||||
|
tar xozf nxrunner.tar.gz -C "${ED}"/opt || die
|
||||||
|
tar xozf nxplayer.tar.gz -C "${ED}"/opt || die
|
||||||
|
|
||||||
|
doenvd "${FILESDIR}"/50nxplayer
|
||||||
|
dosym -r /opt/NX/bin/nxplayer /opt/bin/nxplayer
|
||||||
|
}
|
||||||
@ -1,4 +1,5 @@
|
|||||||
DIST drbd-9.0.27-1.tar.gz 1133216 SHA256 e3366b94faaa9399c857cc2517dd99a8dff049fd3b7326be078ed5f3cf31753e SHA512 e8a2ec57241b9933dd5655e2d6e65d04c0e88017ed76773b5d351f0ed30c167a8b1f4e7145221fb0aec8bdb5ca3d95c428b46c9dceb2576b6c3598962abc699f WHIRLPOOL c8178803a09f4da16342364b3d3ec903d5d083b1aacc49a2c54bbdba9ab88baf1cf6f443f99865e7083c2d5c0f6cbe50e4f62e8f1df519256ff949edf1fef693
|
DIST drbd-9.0.27-1.tar.gz 1133216 SHA256 e3366b94faaa9399c857cc2517dd99a8dff049fd3b7326be078ed5f3cf31753e SHA512 e8a2ec57241b9933dd5655e2d6e65d04c0e88017ed76773b5d351f0ed30c167a8b1f4e7145221fb0aec8bdb5ca3d95c428b46c9dceb2576b6c3598962abc699f WHIRLPOOL c8178803a09f4da16342364b3d3ec903d5d083b1aacc49a2c54bbdba9ab88baf1cf6f443f99865e7083c2d5c0f6cbe50e4f62e8f1df519256ff949edf1fef693
|
||||||
EBUILD drbd-kmod-9.0.27-r1.ebuild 846 SHA256 c58483a775790a0c22908c6072e1c7063e94b127e6ee2df34f645469c1071578 SHA512 639c53d0c9edf61a1c81dd301c2596b2b3304351649eb6d58ea1adf72b11e2212e56b7a61b4e4c4da39a5c37c819fddeb890e071b2f985f67e8757c2f3c3b1cb WHIRLPOOL bb98e94dcb5c3222e0453e6e2a9f3e29b2b9535e9062e9e795f48e0345f7623fd342c99ede999e688d5c0d49f50d30ea39f95867d6317029e32b80175042d923
|
EBUILD drbd-kmod-9.0.27-r1.ebuild 846 SHA256 c58483a775790a0c22908c6072e1c7063e94b127e6ee2df34f645469c1071578 SHA512 639c53d0c9edf61a1c81dd301c2596b2b3304351649eb6d58ea1adf72b11e2212e56b7a61b4e4c4da39a5c37c819fddeb890e071b2f985f67e8757c2f3c3b1cb WHIRLPOOL bb98e94dcb5c3222e0453e6e2a9f3e29b2b9535e9062e9e795f48e0345f7623fd342c99ede999e688d5c0d49f50d30ea39f95867d6317029e32b80175042d923
|
||||||
EBUILD drbd-kmod-9.1.3.ebuild 967 SHA256 8dce76f7b55e711025a2b3a5ceeb5fa7ae6de472511264f1059ac810bd47888f SHA512 4e217d5111387c4a83730cad7112666958224b496fecbf9c7b130defeaf9b59270502da746dd22d8c6fb0d3b1e981fbfea264c9b3ebead60b6816a32ddb69640 WHIRLPOOL 9b92976b942ff89f32401427f04e8d0de7f93891e843a30d7762097e0374ea91f1f2a575b2e6fa7127c520f0f4d3035410b66840746889252f52d9cfe983da7f
|
EBUILD drbd-kmod-9.1.11.ebuild 967 SHA256 8dce76f7b55e711025a2b3a5ceeb5fa7ae6de472511264f1059ac810bd47888f SHA512 4e217d5111387c4a83730cad7112666958224b496fecbf9c7b130defeaf9b59270502da746dd22d8c6fb0d3b1e981fbfea264c9b3ebead60b6816a32ddb69640 WHIRLPOOL 9b92976b942ff89f32401427f04e8d0de7f93891e843a30d7762097e0374ea91f1f2a575b2e6fa7127c520f0f4d3035410b66840746889252f52d9cfe983da7f
|
||||||
EBUILD drbd-kmod-9.1.8.ebuild 967 SHA256 8dce76f7b55e711025a2b3a5ceeb5fa7ae6de472511264f1059ac810bd47888f SHA512 4e217d5111387c4a83730cad7112666958224b496fecbf9c7b130defeaf9b59270502da746dd22d8c6fb0d3b1e981fbfea264c9b3ebead60b6816a32ddb69640 WHIRLPOOL 9b92976b942ff89f32401427f04e8d0de7f93891e843a30d7762097e0374ea91f1f2a575b2e6fa7127c520f0f4d3035410b66840746889252f52d9cfe983da7f
|
EBUILD drbd-kmod-9.1.12-r1.ebuild 1023 SHA256 3b678ea769a4ba53c81a7f9935b73c6c89314bb958a7005a3ba135ee0bb875b4 SHA512 e8ee4822f31aabcb3bac296037c8aa96a71657aa030708671b310cf621a80a57ecd7b3e72e97601bc20fd37ed6c6fc031a49e7c08b9f5db053085b600a1f00ed WHIRLPOOL 3288c6fe5f28f0303319bd052d63e4659ff189b23a9670c525e1d5d71f55845232b40e99ccd595444d234af6b771985a84a1add5c7cb2852a7565da1ce64682b
|
||||||
|
EBUILD drbd-kmod-9.1.17-r1.ebuild 1023 SHA256 3b678ea769a4ba53c81a7f9935b73c6c89314bb958a7005a3ba135ee0bb875b4 SHA512 e8ee4822f31aabcb3bac296037c8aa96a71657aa030708671b310cf621a80a57ecd7b3e72e97601bc20fd37ed6c6fc031a49e7c08b9f5db053085b600a1f00ed WHIRLPOOL 3288c6fe5f28f0303319bd052d63e4659ff189b23a9670c525e1d5d71f55845232b40e99ccd595444d234af6b771985a84a1add5c7cb2852a7565da1ce64682b
|
||||||
|
|||||||
@ -13,7 +13,8 @@ MY_PN="${PN/-kmod/}"
|
|||||||
MY_PV="${PVR/-r/-}"
|
MY_PV="${PVR/-r/-}"
|
||||||
#SRC_URI="https://www.linbit.com/downloads/drbd/9.0/${MY_PN}-${MY_PV}.tar.gz"
|
#SRC_URI="https://www.linbit.com/downloads/drbd/9.0/${MY_PN}-${MY_PV}.tar.gz"
|
||||||
EGIT_REPO_URI="https://github.com/LINBIT/drbd.git"
|
EGIT_REPO_URI="https://github.com/LINBIT/drbd.git"
|
||||||
EGIT_COMMIT="${MY_PN}-${MY_PV}"
|
#EGIT_COMMIT="${MY_PN}-${MY_PV}"
|
||||||
|
EGIT_COMMIT="27b2cdb8bef8840eae8c76a9c86e4223cef07c80"
|
||||||
#S="${WORKDIR}/${MY_PN}-${MY_PV}"
|
#S="${WORKDIR}/${MY_PN}-${MY_PV}"
|
||||||
|
|
||||||
LICENSE="GPL-2"
|
LICENSE="GPL-2"
|
||||||
57
sys-cluster/drbd-kmod/drbd-kmod-9.1.17-r1.ebuild
Normal file
57
sys-cluster/drbd-kmod/drbd-kmod-9.1.17-r1.ebuild
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
# Copyright 2021 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=7
|
||||||
|
|
||||||
|
inherit autotools linux-mod git-r3
|
||||||
|
|
||||||
|
DESCRIPTION="DRBD kernel module"
|
||||||
|
HOMEPAGE="https://www.linbit.com"
|
||||||
|
|
||||||
|
# Package name lacks the "r" for the release
|
||||||
|
MY_PN="${PN/-kmod/}"
|
||||||
|
MY_PV="${PVR/-r/-}"
|
||||||
|
#SRC_URI="https://www.linbit.com/downloads/drbd/9.0/${MY_PN}-${MY_PV}.tar.gz"
|
||||||
|
EGIT_REPO_URI="https://github.com/LINBIT/drbd.git"
|
||||||
|
#EGIT_COMMIT="${MY_PN}-${MY_PV}"
|
||||||
|
EGIT_COMMIT="27b2cdb8bef8840eae8c76a9c86e4223cef07c80"
|
||||||
|
#S="${WORKDIR}/${MY_PN}-${MY_PV}"
|
||||||
|
|
||||||
|
LICENSE="GPL-2"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="amd64 ~x86"
|
||||||
|
|
||||||
|
DEPEND=""
|
||||||
|
RDEPEND="${DEPEND}"
|
||||||
|
BDEPEND="
|
||||||
|
dev-util/coccinelle[python]"
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
default
|
||||||
|
|
||||||
|
convert_to_m Makefile
|
||||||
|
}
|
||||||
|
|
||||||
|
src_compile() {
|
||||||
|
set_arch_to_kernel
|
||||||
|
get_version
|
||||||
|
|
||||||
|
myemakeargs=(
|
||||||
|
KVER="${KV_FULL}"
|
||||||
|
KDIR="${KERNEL_DIR}"
|
||||||
|
)
|
||||||
|
|
||||||
|
emake "${myemakeargs[@]}" module
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
set_arch_to_kernel
|
||||||
|
|
||||||
|
myemakeargs=(
|
||||||
|
KVER="${KV_FULL}"
|
||||||
|
KDIR="${KERNEL_DIR}"
|
||||||
|
DESTDIR="${D}"
|
||||||
|
)
|
||||||
|
|
||||||
|
emake "${myemakeargs[@]}" install
|
||||||
|
}
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user