diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..71ccf32 --- /dev/null +++ b/.gitignore @@ -0,0 +1,438 @@ +thunderbird-3.1.1.source.tar.bz2 +thunderbird-langpacks-3.1.1-20100720.tar.bz2 +thunderbird-3.1.2.source.tar.bz2 +thunderbird-langpacks-3.1.2-20100803.tar.bz2 +/thunderbird-3.1.3.source.tar.bz2 +/thunderbird-langpacks-3.1.3-20100907.tar.bz2 +/thunderbird-3.1.5.source.tar.bz2 +/thunderbird-langpacks-3.1.5-20101019.tar.bz2 +/thunderbird-3.1.6.source.tar.bz2 +/thunderbird-langpacks-3.1.6-20101027.tar.bz2 +/thunderbird-3.1.7.source.tar.bz2 +/thunderbird-langpacks-3.1.7-20101209.tar.bz2 +/thunderbird-3.1.8.source.tar.bz2 +/thunderbird-langpacks-3.1.8-20110301.tar.bz2 +/thunderbird-3.1.9.source.tar.bz2 +/thunderbird-langpacks-3.1.9-20110307.tar.bz2 +/thunderbird-3.1.10.source.tar.bz2 +/thunderbird-langpacks-3.1.10-20110428.tar.xz +/thunderbird-3.1.11.source.tar.bz2 +/thunderbird-langpacks-3.1.11-20110621.tar.xz +/thunderbird-langpacks-5.0-20110628.tar.xz +/thunderbird-5.0.source.tar.bz2 +/thunderbird-6.0.source.tar.bz2 +/thunderbird-langpacks-6.0-20110816.tar.xz +/thunderbird-6.0.2.source.tar.bz2 +/thunderbird-langpacks-6.0.2-20110906.tar.xz +/thunderbird-7.0.source.tar.bz2 +/thunderbird-langpacks-7.0-20110927.tar.xz +/thunderbird-7.0.1.source.tar.bz2 +/thunderbird-langpacks-7.0.1-20110930.tar.xz +/thunderbird-8.0.source.tar.bz2 +/thunderbird-langpacks-8.0-20111108.tar.xz +/thunderbird-9.0.source.tar.bz2 +/thunderbird-langpacks-9.0-20111220.tar.xz +/thunderbird-langpacks-9.0-20111222.tar.xz +/thunderbird-10.0.source.tar.bz2 +/thunderbird-langpacks-10.0-20120131.tar.xz +/thunderbird-10.0.1.source.tar.bz2 +/thunderbird-langpacks-10.0.1-20120209.tar.xz +/thunderbird-11.0.source.tar.bz2 +/thunderbird-langpacks-11.0-20120313.tar.xz +/thunderbird-11.0.1.source.tar.bz2 +/thunderbird-langpacks-11.0.1-20120329.tar.xz +/thunderbird-12.0.source.tar.bz2 +/thunderbird-langpacks-12.0-20120424.tar.xz +/thunderbird-12.0.1.source.tar.bz2 +/thunderbird-langpacks-12.0.1-20120430.tar.xz +/thunderbird-13.0.source.tar.bz2 +/thunderbird-langpacks-13.0-20120605.tar.xz +/thunderbird-13.0.1.source.tar.bz2 +/thunderbird-langpacks-13.0.1-20120615.tar.xz +/thunderbird-14.0.source.tar.bz2 +/thunderbird-langpacks-14.0-20120717.tar.xz +/thunderbird-15.0.source.tar.bz2 +/thunderbird-langpacks-15.0-20120827.tar.xz +/thunderbird-15.0.1.source.tar.bz2 +/thunderbird-langpacks-15.0.1-20120911.tar.xz +/thunderbird-16.0.source.tar.bz2 +/thunderbird-langpacks-16.0-20121009.tar.xz +/thunderbird-16.0.1.source.tar.bz2 +/thunderbird-langpacks-16.0.1-20121011.tar.xz +/thunderbird-16.0.2.source.tar.bz2 +/thunderbird-langpacks-16.0.2-20121029.tar.xz +/thunderbird-17.0.source.tar.bz2 +/thunderbird-langpacks-17.0-20121119.tar.xz +/thunderbird-17.0.2.source.tar.bz2 +/thunderbird-langpacks-17.0.2-20130110.tar.xz +/thunderbird-17.0.3.source.tar.bz2 +/thunderbird-langpacks-17.0.3-20130219.tar.xz +/thunderbird-17.0.4.source.tar.bz2 +/thunderbird-langpacks-17.0.4-20130311.tar.xz +/thunderbird-17.0.5.source.tar.bz2 +/thunderbird-langpacks-17.0.5-20130402.tar.xz +/thunderbird-17.0.6.source.tar.bz2 +/thunderbird-langpacks-17.0.6-20130514.tar.xz +/thunderbird-17.0.7.source.tar.bz2 +/thunderbird-langpacks-17.0.7-20130625.tar.xz +/thunderbird-17.0.8.source.tar.bz2 +/thunderbird-langpacks-17.0.8-20130805.tar.xz +/thunderbird-24.0.source.tar.bz2 +/thunderbird-langpacks-24.0-20130916.tar.xz +/thunderbird-24.1.0.source.tar.bz2 +/thunderbird-langpacks-24.1.0-20131030.tar.xz +/thunderbird-24.2.0.source.tar.bz2 +/thunderbird-langpacks-24.2.0-20131209.tar.xz +/thunderbird-24.3.0.source.tar.bz2 +/thunderbird-langpacks-24.3.0-20140203.tar.xz +/thunderbird-24.4.0.source.tar.bz2 +/thunderbird-langpacks-24.4.0-20140318.tar.xz +/thunderbird-24.5.0.source.tar.bz2 +/thunderbird-langpacks-24.5.0-20140428.tar.xz +/thunderbird-24.6.0.source.tar.bz2 +/thunderbird-langpacks-24.6.0-20140609.tar.xz +/thunderbird-24.7.0.source.tar.bz2 +/thunderbird-langpacks-24.7.0-20140722.tar.xz +/thunderbird-31.0.source.tar.bz2 +/thunderbird-langpacks-31.0-20140729.tar.xz +/thunderbird-31.1.0.source.tar.bz2 +/thunderbird-langpacks-31.1.0-20140901.tar.xz +/thunderbird-31.1.1.source.tar.bz2 +/thunderbird-langpacks-31.1.1-20140911.tar.xz +/thunderbird-langpacks-31.2.0-20141014.tar.xz +/thunderbird-31.2.0.source.tar.bz2 +/thunderbird-31.3.0.source.tar.bz2 +/thunderbird-langpacks-31.3.0-20141201.tar.xz +/thunderbird-31.4.0.source.tar.bz2 +/thunderbird-langpacks-31.4.0-20150114.tar.xz +/thunderbird-31.5.0.source.tar.bz2 +/thunderbird-langpacks-31.5.0-20150224.tar.xz +/thunderbird-31.6.0.source.tar.bz2 +/thunderbird-langpacks-31.6.0-20150331.tar.xz +/thunderbird-31.7.0.source.tar.bz2 +/thunderbird-langpacks-31.7.0-20150512.tar.xz +/thunderbird-38.0.1.source.tar.bz2 +/thunderbird-langpacks-38.0.1-20150609.tar.xz +/thunderbird-38.1.0.source.tar.bz2 +/thunderbird-langpacks-38.1.0-20150709.tar.xz +/l10n-lightning-38.1.0.tar.xz +/thunderbird-38.2.0.source.tar.bz2 +/thunderbird-langpacks-38.2.0-20150819.tar.xz +/l10n-lightning-38.2.0.tar.xz +/thunderbird-38.3.0.source.tar.bz2 +/thunderbird-langpacks-38.3.0-20150929.tar.xz +/l10n-lightning-38.3.0.tar.xz +/thunderbird-38.4.0.source.tar.bz2 +/thunderbird-langpacks-38.4.0-20151130.tar.xz +/l10n-lightning-38.4.0.tar.xz +/thunderbird-38.5.0.source.tar.bz2 +/thunderbird-langpacks-38.5.0-20160104.tar.xz +/l10n-lightning-38.5.0.tar.xz +/thunderbird-38.6.0.source.tar.bz2 +/thunderbird-langpacks-38.6.0-20160216.tar.xz +/l10n-lightning-38.6.0.tar.xz +/thunderbird-langpacks-38.7.1-20160324.tar.xz +/thunderbird-38.7.1.source.tar.bz2 +/l10n-lightning-38.7.1.tar.xz +/thunderbird-langpacks-45.0-20160412.tar.xz +/thunderbird-45.0.source.tar.xz +/l10n-lightning-45.0.tar.xz +/thunderbird-langpacks-45.1.0-20160517.tar.xz +/thunderbird-45.1.0.source.tar.xz +/l10n-lightning-45.1.0.tar.xz +/thunderbird-45.1.1.source.tar.xz +/thunderbird-langpacks-45.1.1-20160606.tar.xz +/l10n-lightning-45.1.1.tar.xz +/thunderbird-45.2.0.source.tar.xz +/thunderbird-langpacks-45.2.0-20160711.tar.xz +/l10n-lightning-45.2.0.tar.xz +/thunderbird-45.3.0.source.tar.xz +/thunderbird-langpacks-45.3.0-20160901.tar.xz +/l10n-lightning-45.3.0.tar.xz +/thunderbird-45.4.0.source.tar.xz +/thunderbird-langpacks-45.4.0-20161006.tar.xz +/l10n-lightning-45.4.0.tar.xz +/thunderbird-45.5.0.source.tar.xz +/thunderbird-langpacks-45.5.0-20161128.tar.xz +/l10n-lightning-45.5.0.tar.xz +/thunderbird-45.5.1.source.tar.xz +/thunderbird-langpacks-45.5.1-20161201.tar.xz +/l10n-lightning-45.5.1.tar.xz +/thunderbird-45.6.0.source.tar.xz +/thunderbird-langpacks-45.6.0-20161216.tar.xz +/l10n-lightning-45.6.0.tar.xz +/thunderbird-45.7.0.source.tar.xz +/thunderbird-langpacks-45.7.0-20170131.tar.xz +/l10n-lightning-45.7.0.tar.xz +/thunderbird-45.8.0.source.tar.xz +/thunderbird-langpacks-45.8.0-20170308.tar.xz +/l10n-lightning-45.8.0.tar.xz +/thunderbird-52.0.source.tar.xz +/thunderbird-langpacks-52.0-20170404.tar.xz +/l10n-lightning-52.0.tar.xz +/thunderbird-52.1.0.source.tar.xz +/thunderbird-langpacks-52.1.0-20170502.tar.xz +/l10n-lightning-52.1.0.tar.xz +/thunderbird-langpacks-52.1.1-20170602.tar.xz +/thunderbird-52.1.1.source.tar.xz +/l10n-lightning-52.1.1.tar.xz +/thunderbird-52.2.0.source.tar.xz +/thunderbird-langpacks-52.2.0-20170615.tar.xz +/l10n-lightning-52.2.0.tar.xz +/thunderbird-52.2.1.source.tar.xz +/thunderbird-langpacks-52.2.1-20170629.tar.xz +/l10n-lightning-52.2.1.tar.xz +/thunderbird-52.3.0.source.tar.xz +/thunderbird-langpacks-52.3.0-20170821.tar.xz +/l10n-lightning-52.3.0.tar.xz +/thunderbird-52.4.0.source.tar.xz +/thunderbird-langpacks-52.4.0-20171003.tar.xz +/l10n-lightning-52.4.0.tar.xz +/thunderbird-langpacks-52.4.0-20171004.tar.xz +/thunderbird-52.5.0.source.tar.xz +/thunderbird-langpacks-52.5.0-20171128.tar.xz +/l10n-lightning-52.5.0.tar.xz +/thunderbird-52.5.2.source.tar.xz +/thunderbird-langpacks-52.5.2-20180102.tar.xz +/l10n-lightning-52.5.2.tar.xz +/thunderbird-52.6.0.source.tar.xz +/thunderbird-langpacks-52.6.0-20180129.tar.xz +/l10n-lightning-52.6.0.tar.xz +/thunderbird-52.7.0.source.tar.xz +/thunderbird-langpacks-52.7.0-20180327.tar.xz +/l10n-lightning-52.7.0.tar.xz +/thunderbird-52.8.0.source.tar.xz +/thunderbird-langpacks-52.8.0-20180522.tar.xz +/l10n-lightning-52.8.0.tar.xz +/thunderbird-52.9.1.source.tar.xz +/thunderbird-langpacks-52.9.1-20180710.tar.xz +/l10n-lightning-52.9.1.tar.xz +/thunderbird-60.0.source.tar.xz +/thunderbird-langpacks-60.0-20180815.tar.xz +/l10n-lightning-60.0.tar.xz +/thunderbird-60.2.1.source.tar.xz +/thunderbird-langpacks-60.2.1-20181003.tar.xz +/l10n-lightning-60.2.1.tar.xz +/lightning-langpacks-60.2.1.tar.xz +/thunderbird-60.3.0.source.tar.xz +/thunderbird-langpacks-60.3.0-20181030.tar.xz +/lightning-langpacks-60.3.0.tar.xz +/thunderbird-60.3.1.source.tar.xz +/thunderbird-langpacks-60.3.1-20181122.tar.xz +/lightning-langpacks-60.3.1.tar.xz +/thunderbird-60.3.3.source.tar.xz +/thunderbird-langpacks-60.3.3-20181205.tar.xz +/lightning-langpacks-60.3.3.tar.xz +/thunderbird-60.4.0.source.tar.xz +/thunderbird-langpacks-60.4.0-20190102.tar.xz +/lightning-langpacks-60.4.0.tar.xz +/thunderbird-60.5.0.source.tar.xz +/lightning-langpacks-60.5.0.tar.xz +/thunderbird-langpacks-60.5.0-20190129.tar.xz +/thunderbird-60.5.1.source.tar.xz +/thunderbird-langpacks-60.5.1-20190218.tar.xz +/lightning-langpacks-60.5.1.tar.xz +/thunderbird-60.5.3.source.tar.xz +/lightning-langpacks-60.5.3.tar.xz +/thunderbird-langpacks-60.5.3-20190306.tar.xz +/thunderbird-langpacks-60.6.0-20190318.tar.xz +/thunderbird-60.6.0.source.tar.xz +/lightning-langpacks-60.6.0.tar.xz +/thunderbird-60.6.1.source.tar.xz +/lightning-langpacks-60.6.1.tar.xz +/thunderbird-langpacks-60.6.1-20190325.tar.xz +/thunderbird-60.7.0.source.tar.xz +/thunderbird-langpacks-60.7.0-20190520.tar.xz +/lightning-langpacks-60.7.0.tar.xz +/thunderbird-60.7.1.source.tar.xz +/thunderbird-langpacks-60.7.1-20190618.tar.xz +/lightning-langpacks-60.7.1.tar.xz +/thunderbird-60.7.2.source.tar.xz +/thunderbird-langpacks-60.7.2-20190620.tar.xz +/lightning-langpacks-60.7.2.tar.xz +/thunderbird-langpacks-60.7.2-20190621.tar.xz +/thunderbird-60.8.0.source.tar.xz +/thunderbird-langpacks-60.8.0-20190704.tar.xz +/lightning-langpacks-60.8.0.tar.xz +/thunderbird-68.0.source.tar.xz +/thunderbird-langpacks-68.0-20190829.tar.xz +/lightning-langpacks-68.0.tar.xz +/cbindgen-vendor.tar.xz +/thunderbird-68.1.0.source.tar.xz +/thunderbird-langpacks-68.1.0-20190912.tar.xz +/lightning-langpacks-68.1.0.tar.xz +/thunderbird-68.1.1.source.tar.xz +/thunderbird-langpacks-68.1.1-20190927.tar.xz +/lightning-langpacks-68.1.1.tar.xz +/thunderbird-68.2.0.source.tar.xz +/thunderbird-langpacks-68.2.0-20191029.tar.xz +/lightning-langpacks-68.2.0.tar.xz +/thunderbird-68.2.1.source.tar.xz +/thunderbird-langpacks-68.2.1-20191101.tar.xz +/lightning-langpacks-68.2.1.tar.xz +/thunderbird-68.2.2.source.tar.xz +/thunderbird-langpacks-68.2.2-20191105.tar.xz +/lightning-langpacks-68.2.2.tar.xz +/thunderbird-68.3.0.source.tar.xz +/thunderbird-langpacks-68.3.0-20191203.tar.xz +/lightning-langpacks-68.3.0.tar.xz +/thunderbird-68.3.1.source.tar.xz +/thunderbird-langpacks-68.3.1-20191217.tar.xz +/lightning-langpacks-68.3.1.tar.xz +/thunderbird-68.4.1.source.tar.xz +/thunderbird-langpacks-68.4.1-20200113.tar.xz +/lightning-langpacks-68.4.1.tar.xz +/thunderbird-68.5.0.source.tar.xz +/thunderbird-langpacks-68.5.0-20200213.tar.xz +/lightning-langpacks-68.5.0.tar.xz +/thunderbird-68.6.0.source.tar.xz +/thunderbird-langpacks-68.6.0-20200313.tar.xz +/lightning-langpacks-68.6.0.tar.xz +/thunderbird-68.7.0.source.tar.xz +/thunderbird-langpacks-68.7.0-20200409.tar.xz +/lightning-langpacks-68.7.0.tar.xz +/thunderbird-68.8.0.source.tar.xz +/thunderbird-langpacks-68.8.0-20200514.tar.xz +/lightning-langpacks-68.8.0.tar.xz +/thunderbird-68.9.0.source.tar.xz +/thunderbird-langpacks-68.9.0-20200608.tar.xz +/lightning-langpacks-68.9.0.tar.xz +/thunderbird-68.10.0.source.tar.xz +/thunderbird-langpacks-68.10.0-20200709.tar.xz +/lightning-langpacks-68.10.0.tar.xz +/thunderbird-68.11.0.source.tar.xz +/thunderbird-langpacks-68.11.0-20200806.tar.xz +/lightning-langpacks-68.11.0.tar.xz +/thunderbird-68.12.0.source.tar.xz +/thunderbird-langpacks-68.12.0-20200908.tar.xz +/lightning-langpacks-68.12.0.tar.xz +/thunderbird-78.3.1.source.tar.xz +/thunderbird-langpacks-78.3.1-20200930.tar.xz +/cbindgen-vendor-0.14.3.tar.xz +/thunderbird-78.4.0.source.tar.xz +/thunderbird-langpacks-78.4.0-20201022.tar.xz +/thunderbird-78.4.3.source.tar.xz +/thunderbird-langpacks-78.4.3-20201112.tar.xz +/thunderbird-78.5.0.source.tar.xz +/thunderbird-langpacks-78.5.0-20201125.tar.xz +/thunderbird-78.6.0.source.tar.xz +/thunderbird-langpacks-78.6.0-20201215.tar.xz +/thunderbird-78.6.1.source.tar.xz +/thunderbird-langpacks-78.6.1-20210114.tar.xz +/thunderbird-78.7.0.source.tar.xz +/thunderbird-langpacks-78.7.0-20210127.tar.xz +/thunderbird-78.8.0.source.tar.xz +/thunderbird-langpacks-78.8.0-20210218.tar.xz +/thunderbird-78.8.1.source.tar.xz +/thunderbird-langpacks-78.8.1-20210315.tar.xz +/thunderbird-78.10.1.source.tar.xz +/thunderbird-langpacks-78.10.1-20210504.tar.xz +/thunderbird-78.11.0.source.tar.xz +/thunderbird-langpacks-78.11.0-20210602.tar.xz +/thunderbird-78.12.0.source.tar.xz +/thunderbird-langpacks-78.12.0-20210721.tar.xz +/thunderbird-91.0.2.source.tar.xz +/thunderbird-langpacks-91.0.2-20210823.tar.xz +/thunderbird-91.0.3.source.tar.xz +/thunderbird-langpacks-91.0.3-20210826.tar.xz +/thunderbird-91.1.0.source.tar.xz +/thunderbird-langpacks-91.1.0-20210907.tar.xz +/thunderbird-91.2.0.source.tar.xz +/thunderbird-langpacks-91.2.0-20211015.tar.xz +/thunderbird-91.3.0.source.tar.xz +/thunderbird-langpacks-91.3.0-20211109.tar.xz +/thunderbird-91.4.0.source.tar.xz +/thunderbird-langpacks-91.4.0-20211215.tar.xz +/thunderbird-91.5.0.source.tar.xz +/thunderbird-langpacks-91.5.0-20220118.tar.xz +/thunderbird-91.6.0.source.tar.xz +/thunderbird-langpacks-91.6.0-20220209.tar.xz +/thunderbird-91.6.1.source.tar.xz +/thunderbird-langpacks-91.6.1-20220228.tar.xz +/thunderbird-langpacks-91.6.2-20220307.tar.xz +/thunderbird-91.6.2.source.tar.xz +/thunderbird-langpacks-91.7.0-20220308.tar.xz +/thunderbird-91.7.0.source.tar.xz +/thunderbird-91.8.0.source.tar.xz +/thunderbird-langpacks-91.8.0-20220405.tar.xz +/thunderbird-91.9.0.source.tar.xz +/thunderbird-langpacks-91.9.0-20220503.tar.xz +/thunderbird-91.9.1.source.tar.xz +/thunderbird-langpacks-91.9.1-20220523.tar.xz +/thunderbird-91.10.0.source.tar.xz +/thunderbird-langpacks-91.10.0-20220530.tar.xz +/thunderbird-91.11.0.source.tar.xz +/thunderbird-langpacks-91.11.0-20220628.tar.xz +/thunderbird-91.12.0.source.tar.xz +/thunderbird-langpacks-91.12.0-20220725.tar.xz +/thunderbird-102.1.0.source.tar.xz +/thunderbird-langpacks-102.1.0-20220803.tar.xz +/thunderbird-102.2.0.source.tar.xz +/thunderbird-langpacks-102.2.0-20220823.tar.xz +/thunderbird-102.2.1.source.tar.xz +/thunderbird-langpacks-102.2.1-20220901.tar.xz +/thunderbird-102.3.0.source.tar.xz +/thunderbird-langpacks-102.3.0-20220916.tar.xz +/thunderbird-102.3.1.source.tar.xz +/thunderbird-langpacks-102.3.1-20220929.tar.xz +/thunderbird-102.4.0.source.tar.xz +/thunderbird-langpacks-102.4.0-20221017.tar.xz +/thunderbird-102.4.1.source.tar.xz +/thunderbird-langpacks-102.4.1-20221102.tar.xz +/thunderbird-102.5.0.source.tar.xz +/thunderbird-langpacks-102.5.0-20221115.tar.xz +/thunderbird-102.5.1.source.tar.xz +/thunderbird-langpacks-102.5.1-20221201.tar.xz +/thunderbird-102.6.0.source.tar.xz +/thunderbird-langpacks-102.6.0-20221213.tar.xz +/thunderbird-102.7.1.source.tar.xz +/thunderbird-langpacks-102.7.1-20230124.tar.xz +/thunderbird-langpacks-102.7.1-20230131.tar.xz +/thunderbird-102.7.2.source.tar.xz +/thunderbird-langpacks-102.7.2-20230208.tar.xz +/thunderbird-102.8.0.source.tar.xz +/thunderbird-langpacks-102.8.0-20230215.tar.xz +/thunderbird-102.9.0.source.tar.xz +/thunderbird-langpacks-102.9.0-20230313.tar.xz +/thunderbird-102.9.1.source.tar.xz +/thunderbird-langpacks-102.9.1-20230329.tar.xz +/thunderbird-102.10.0.source.tar.xz +/thunderbird-langpacks-102.10.0-20230411.tar.xz +/thunderbird-102.11.0.source.tar.xz +/thunderbird-langpacks-102.11.0-20230504.tar.xz +/thunderbird-102.11.1.source.tar.xz +/thunderbird-langpacks-102.11.1-20230525.tar.xz +/thunderbird-102.12.0.source.tar.xz +/thunderbird-langpacks-102.12.0-20230605.tar.xz +/thunderbird-102.13.0.source.tar.xz +/thunderbird-langpacks-102.13.0-20230707.tar.xz +/thunderbird-langpacks-115.0.1-20230720.tar.xz +/thunderbird-115.0.1.source.tar.xz +/thunderbird-langpacks-115.1.1-20230815.tar.xz +/thunderbird-115.1.1.source.tar.xz +/thunderbird-115.2.2.source.tar.xz +/thunderbird-langpacks-115.2.2-20230920.tar.xz +/thunderbird-115.3.0.source.tar.xz +/thunderbird-langpacks-115.3.0-20230926.tar.xz +/thunderbird-langpacks-115.3.1-20230929.tar.xz +/thunderbird-115.3.1.source.tar.xz +/thunderbird-115.3.2.source.tar.xz +/thunderbird-langpacks-115.3.2-20231011.tar.xz +/thunderbird-115.4.0.source.tar.xz +/thunderbird-langpacks-115.4.0-20231024.tar.xz +/thunderbird-115.4.1.source.tar.xz +/thunderbird-langpacks-115.4.1-20231025.tar.xz +/thunderbird-115.4.2.source.tar.xz +/thunderbird-langpacks-115.4.2-20231108.tar.xz +/thunderbird-115.4.3.source.tar.xz +/thunderbird-langpacks-115.4.3-20231115.tar.xz +/thunderbird-115.5.0.source.tar.xz +/thunderbird-langpacks-115.5.0-20231121.tar.xz +/thunderbird-115.5.1.source.tar.xz +/thunderbird-langpacks-115.5.1-20231128.tar.xz +/thunderbird-115.5.2.source.tar.xz +/thunderbird-langpacks-115.5.2-20231212.tar.xz +/thunderbird-115.6.0.source.tar.xz +/thunderbird-langpacks-115.6.0-20231218.tar.xz +/thunderbird-115.6.1.source.tar.xz +/thunderbird-langpacks-115.6.1-20240110.tar.xz diff --git a/0001-GLIBCXX-fix-for-GCC-12.patch b/0001-GLIBCXX-fix-for-GCC-12.patch new file mode 100644 index 0000000..972cebc --- /dev/null +++ b/0001-GLIBCXX-fix-for-GCC-12.patch @@ -0,0 +1,42 @@ +From efd5bc0715e5477318be95a76811cda0a89e8289 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Emilio=20Cobos=20=C3=81lvarez?= +Date: Fri, 4 Mar 2022 12:00:26 +0100 +Subject: [PATCH] GLIBCXX fix for GCC 12? + +Borrowed from Firefox and adjusted to Thunderbird 91.7.0 + +--- + build/unix/stdc++compat/stdc++compat.cpp | 14 ++++++++++++++ + 1 file changed, 14 insertions(+) + +diff --git a/build/unix/stdc++compat/stdc++compat.cpp b/build/unix/stdc++compat/stdc++compat.cpp +--- thunderbird-91.7.0/build/unix/stdc++compat/stdc++compat.cpp.0001-GLIBCXX-fix-for-GCC-12 2022-03-07 20:34:15.000000000 +0100 ++++ thunderbird-91.7.0/build/unix/stdc++compat/stdc++compat.cpp 2022-03-15 22:50:03.161345590 +0100 +@@ -24,6 +24,7 @@ + GLIBCXX_3.4.27 is from gcc 10 + GLIBCXX_3.4.28 is from gcc 10 + GLIBCXX_3.4.29 is from gcc 11 ++ GLIBCXX_3.4.30 is from gcc 12 + + This file adds the necessary compatibility tricks to avoid symbols with + version GLIBCXX_3.4.20 and bigger, keeping binary compatibility with +@@ -73,6 +74,19 @@ void __attribute__((weak)) __throw_bad_a + + } // namespace std + #endif ++ ++#if _GLIBCXX_RELEASE >= 12 ++namespace std { ++ ++/* This avoids the GLIBCXX_3.4.30 symbol version. */ ++void __attribute__((weak)) ++__glibcxx_assert_fail(const char* __file, int __line, const char* __function, ++ const char* __condition) { ++ MOZ_CRASH(); ++} ++ ++} // namespace std ++#endif + + #if MOZ_LIBSTDCXX_VERSION >= GLIBCXX_VERSION(3, 4, 21) + /* While we generally don't build with exceptions, we have some host tools diff --git a/Bug-1238661---fix-mozillaSignalTrampoline-to-work-.patch b/Bug-1238661---fix-mozillaSignalTrampoline-to-work-.patch new file mode 100644 index 0000000..0663ffe --- /dev/null +++ b/Bug-1238661---fix-mozillaSignalTrampoline-to-work-.patch @@ -0,0 +1,12 @@ +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) diff --git a/bindgen-d0dfc52706f23db9dc9d74642eeebd89d73cb8d0.patch b/bindgen-d0dfc52706f23db9dc9d74642eeebd89d73cb8d0.patch new file mode 100644 index 0000000..0968827 --- /dev/null +++ b/bindgen-d0dfc52706f23db9dc9d74642eeebd89d73cb8d0.patch @@ -0,0 +1,171 @@ +diff -up thunderbird-68.3.0/third_party/rust/bindgen/.cargo-checksum.json.bindgen thunderbird-68.3.0/third_party/rust/bindgen/.cargo-checksum.json +--- thunderbird-68.3.0/third_party/rust/bindgen/.cargo-checksum.json.bindgen 2019-12-01 15:29:26.000000000 +0100 ++++ thunderbird-68.3.0/third_party/rust/bindgen/.cargo-checksum.json 2019-12-04 11:38:42.878975886 +0100 +@@ -1 +1 @@ +-{"files":{"Cargo.toml":"9af635e7bad9021a49742a312faf6178b757dbd48aabc998931d6f491f14c179","LICENSE":"c23953d9deb0a3312dbeaf6c128a657f3591acee45067612fa68405eaa4525db","README.md":"5a1f556c6a57c0a6ccc65e19c27718e0f4b32381a8efcc80f6601b33c58c5d59","build.rs":"a9f6915c54d75f357ce32f96327bf4df53dc81a505b70831978f9dac6f43841d","src/callbacks.rs":"b24d7982332c6a35928f134184ddf4072fe4545a45546b97b9b0e0c1fbb77c08","src/clang.rs":"e9203eb5a1b432efebafcd011896e35e8c9145037bf99e7bb3709dc1b8e8e783","src/codegen/bitfield_unit.rs":"88b0604322dc449fc9284850eadc1f5d14b42fa747d4258bae0b6b9535f52dfd","src/codegen/bitfield_unit_tests.rs":"2073ac6a36e0bc9afaef5b1207966817c8fb7a1a9f6368c3b1b8f79822efbfba","src/codegen/error.rs":"2613af1d833377fd4a70719f4a09951d9d45dc9227827b9a2a938a1bcaaea2dd","src/codegen/helpers.rs":"fbd23e68dd51ccaddeb9761394d5df2db49baded0e2dccf6bbc52a2d6de502eb","src/codegen/impl_debug.rs":"f82969461d522fb758eca552ceaf189122a404cbb47fcc16008bfe52fc62aefa","src/codegen/impl_partialeq.rs":"d40d9ee2849c4d3d557b033c4d3af5e6de4a44347f67c0f016198086338811af","src/codegen/mod.rs":"238d989e13b7556e5d120a2bfe85b43332fba56cbe8df886d4c32e650fff1247","src/codegen/struct_layout.rs":"3fa5524aff82365ce292b0cc85080514c85a6dbd31bce90f001773b995dda28e","src/extra_assertions.rs":"494534bd4f18b80d89b180c8a93733e6617edcf7deac413e9a73fd6e7bc9ced7","src/features.rs":"c5fd7149f4a3b41fd4f89ade08505170942f4bc791bcb6a34fdddd3ae61856f8","src/ir/analysis/derive.rs":"325d4c1c1e6194e743f42a2316f1501b0ef852fe309f2e9cac3434825ad235f0","src/ir/analysis/has_destructor.rs":"63644f479738df35e531d3324ff892614083c3656e0747aa34d9f20dada878ec","src/ir/analysis/has_float.rs":"76162a309e4285a806755a08c687a3e7bc894a100a63da4e88584035e215b11d","src/ir/analysis/has_type_param_in_array.rs":"fdbc0af28a144c88ea2de83e6e6da5e1ffb40e3dd63fd7a708095d085bb06f94","src/ir/analysis/has_vtable.rs":"5788372d27bdbaaf0454bc17be31a5480918bc41a8a1c4832e8c61185c07f9cd","src/ir/analysis/mod.rs":"1f218e15c19f6666512908abc853fa7ff9ca5d0fafd94f026d9e4b0ce287ec3c","src/ir/analysis/sizedness.rs":"8dc10043d872e68e660ef96edca4d9733f95be45cdad4893462fa929b335014f","src/ir/analysis/template_params.rs":"6312c008bbc80f50e72a766756c8daddea0b6eeb31ec924b83a231df931e170e","src/ir/annotations.rs":"39a5ab19f4d5dfa617577e4a0d0d2b67b5369d480c7cca4b14d172458c9843f0","src/ir/comment.rs":"c48abe01c5af0f09f583a89f1394bc6c161b40f6c8f0f600bbfe3c907b47969b","src/ir/comp.rs":"ca439407faefbe3a198246f0a1dbdf4e40307e45eaaad317e85d1aab37bb31fc","src/ir/context.rs":"599226eb04d337a1b1b13af91af91bdb02dbd5f26f274cbc0ebc4489eb144fc0","src/ir/derive.rs":"34f9aa76b6c9c05136bb69dcd6455397faef571a567254d2c541d50a962994db","src/ir/dot.rs":"95ed2968fc3239d87892e9f1edf1ed6dd18630d949564961765967ea1d16960c","src/ir/enum_ty.rs":"9cc242d6b3c1866665594e8b306860ee39c0ea42d22198d46b7fded473fe3e84","src/ir/function.rs":"2d41d9df19f42b0c383f338be4c026c005853a8d1caf5f3e5a2f3a8dad202232","src/ir/int.rs":"07e0c7dbd2dd977177fae3acd2a14adf271c6cf9ff4b57cddc11d50734fd4801","src/ir/item.rs":"3bcdb69b793350e5744aec3577cdbb1e5068ece5220c38763cecd82dfb5e8f03","src/ir/item_kind.rs":"dbeae8c4fd0e5c9485d325aea040e056a1f2cd6d43fc927dee8fe1c0c59a7197","src/ir/layout.rs":"d49582081f5f86f7595afbe4845f38fb3b969a840b568f4a49b265e7d790bb5b","src/ir/mod.rs":"2eae90f207fad2e45957ec9287064992a419e3fc916aba84faff2ea25cbeb5ee","src/ir/module.rs":"c4d90bf38fe3672e01923734ccbdb7951ea929949d5f413a9c2aee12395a5094","src/ir/objc.rs":"758aa955a0c5d6ad82606c88a1f4cd1d93e666b71e82d43b18b1aaae96cf888a","src/ir/template.rs":"c0f8570b927dfd6a421fc4ce3094ec837a3ed936445225dbfac961e8e0842ae5","src/ir/traversal.rs":"ea751379a5aec02f93f8d2c61e18232776b1f000dbeae64b9a7195ba21a19dd6","src/ir/ty.rs":"952fb04cd6a71a2bca5c509aecacb42a1de0cae75824941541a38dc589f0993a","src/ir/var.rs":"8bdafb6d02f2c55ae11c28d88b19fb7a65ba8466da12ff039ae4c16c790b291e","src/lib.rs":"d5c8b404c515d30fc2d78b28eb84cff6b256f1f1e2dbd6aca280529bb2af6879","src/log_stubs.rs":"6dfdd908b7c6453da416cf232893768f9480e551ca4add0858ef88bf71ee6ceb","src/main.rs":"e519053bcdde6bc88f60f955246a02d53b3db1cc5ccd1612e6675b790b7460b0","src/options.rs":"041d635c8f6712ca32676a68f06d0245faed5577d9513786e058540ea2a69a7f","src/parse.rs":"be7d13cc84fae79ec7b3aa9e77063fa475a48d74a854423e2c72d75006a25202","src/regex_set.rs":"5cb72fc3714c0d79e9e942d003349c0775fafd7cd0c9603c65f5261883bbf9cf","src/time.rs":"3b763e6fee51d0eb01228dfe28bc28a9f692aff73b2a7b90a030902e0238fca6"},"package":"6bd7710ac8399ae1ebe1e3aac7c9047c4f39f2c94b33c997f482f49e96991f7c"} +\ No newline at end of file ++{"files":{"Cargo.toml":"9af635e7bad9021a49742a312faf6178b757dbd48aabc998931d6f491f14c179","LICENSE":"c23953d9deb0a3312dbeaf6c128a657f3591acee45067612fa68405eaa4525db","README.md":"5a1f556c6a57c0a6ccc65e19c27718e0f4b32381a8efcc80f6601b33c58c5d59","build.rs":"a9f6915c54d75f357ce32f96327bf4df53dc81a505b70831978f9dac6f43841d","src/callbacks.rs":"b24d7982332c6a35928f134184ddf4072fe4545a45546b97b9b0e0c1fbb77c08","src/clang.rs":"e9203eb5a1b432efebafcd011896e35e8c9145037bf99e7bb3709dc1b8e8e783","src/codegen/bitfield_unit.rs":"88b0604322dc449fc9284850eadc1f5d14b42fa747d4258bae0b6b9535f52dfd","src/codegen/bitfield_unit_tests.rs":"2073ac6a36e0bc9afaef5b1207966817c8fb7a1a9f6368c3b1b8f79822efbfba","src/codegen/error.rs":"2613af1d833377fd4a70719f4a09951d9d45dc9227827b9a2a938a1bcaaea2dd","src/codegen/helpers.rs":"fbd23e68dd51ccaddeb9761394d5df2db49baded0e2dccf6bbc52a2d6de502eb","src/codegen/impl_debug.rs":"f82969461d522fb758eca552ceaf189122a404cbb47fcc16008bfe52fc62aefa","src/codegen/impl_partialeq.rs":"d40d9ee2849c4d3d557b033c4d3af5e6de4a44347f67c0f016198086338811af","src/codegen/mod.rs":"238d989e13b7556e5d120a2bfe85b43332fba56cbe8df886d4c32e650fff1247","src/codegen/struct_layout.rs":"3fa5524aff82365ce292b0cc85080514c85a6dbd31bce90f001773b995dda28e","src/extra_assertions.rs":"494534bd4f18b80d89b180c8a93733e6617edcf7deac413e9a73fd6e7bc9ced7","src/features.rs":"c5fd7149f4a3b41fd4f89ade08505170942f4bc791bcb6a34fdddd3ae61856f8","src/ir/analysis/derive.rs":"325d4c1c1e6194e743f42a2316f1501b0ef852fe309f2e9cac3434825ad235f0","src/ir/analysis/has_destructor.rs":"63644f479738df35e531d3324ff892614083c3656e0747aa34d9f20dada878ec","src/ir/analysis/has_float.rs":"76162a309e4285a806755a08c687a3e7bc894a100a63da4e88584035e215b11d","src/ir/analysis/has_type_param_in_array.rs":"fdbc0af28a144c88ea2de83e6e6da5e1ffb40e3dd63fd7a708095d085bb06f94","src/ir/analysis/has_vtable.rs":"8c92a52c0f859c7bec7bfbc36b9d18f904baab0c8c9dc1b3e7af34de1a0b0da4","src/ir/analysis/mod.rs":"1f218e15c19f6666512908abc853fa7ff9ca5d0fafd94f026d9e4b0ce287ec3c","src/ir/analysis/sizedness.rs":"71f1a37f75b971ea5b0d8457473cc410947dbf706cb6d2c0338916910b78a675","src/ir/analysis/template_params.rs":"6312c008bbc80f50e72a766756c8daddea0b6eeb31ec924b83a231df931e170e","src/ir/annotations.rs":"39a5ab19f4d5dfa617577e4a0d0d2b67b5369d480c7cca4b14d172458c9843f0","src/ir/comment.rs":"c48abe01c5af0f09f583a89f1394bc6c161b40f6c8f0f600bbfe3c907b47969b","src/ir/comp.rs":"ca439407faefbe3a198246f0a1dbdf4e40307e45eaaad317e85d1aab37bb31fc","src/ir/context.rs":"599226eb04d337a1b1b13af91af91bdb02dbd5f26f274cbc0ebc4489eb144fc0","src/ir/derive.rs":"e5581852eec87918901a129284b4965aefc8a19394187a8095779a084f28fabe","src/ir/dot.rs":"95ed2968fc3239d87892e9f1edf1ed6dd18630d949564961765967ea1d16960c","src/ir/enum_ty.rs":"9cc242d6b3c1866665594e8b306860ee39c0ea42d22198d46b7fded473fe3e84","src/ir/function.rs":"2d41d9df19f42b0c383f338be4c026c005853a8d1caf5f3e5a2f3a8dad202232","src/ir/int.rs":"07e0c7dbd2dd977177fae3acd2a14adf271c6cf9ff4b57cddc11d50734fd4801","src/ir/item.rs":"3bcdb69b793350e5744aec3577cdbb1e5068ece5220c38763cecd82dfb5e8f03","src/ir/item_kind.rs":"dbeae8c4fd0e5c9485d325aea040e056a1f2cd6d43fc927dee8fe1c0c59a7197","src/ir/layout.rs":"d49582081f5f86f7595afbe4845f38fb3b969a840b568f4a49b265e7d790bb5b","src/ir/mod.rs":"2eae90f207fad2e45957ec9287064992a419e3fc916aba84faff2ea25cbeb5ee","src/ir/module.rs":"c4d90bf38fe3672e01923734ccbdb7951ea929949d5f413a9c2aee12395a5094","src/ir/objc.rs":"758aa955a0c5d6ad82606c88a1f4cd1d93e666b71e82d43b18b1aaae96cf888a","src/ir/template.rs":"c0f8570b927dfd6a421fc4ce3094ec837a3ed936445225dbfac961e8e0842ae5","src/ir/traversal.rs":"ea751379a5aec02f93f8d2c61e18232776b1f000dbeae64b9a7195ba21a19dd6","src/ir/ty.rs":"952fb04cd6a71a2bca5c509aecacb42a1de0cae75824941541a38dc589f0993a","src/ir/var.rs":"8bdafb6d02f2c55ae11c28d88b19fb7a65ba8466da12ff039ae4c16c790b291e","src/lib.rs":"d5c8b404c515d30fc2d78b28eb84cff6b256f1f1e2dbd6aca280529bb2af6879","src/log_stubs.rs":"6dfdd908b7c6453da416cf232893768f9480e551ca4add0858ef88bf71ee6ceb","src/main.rs":"e519053bcdde6bc88f60f955246a02d53b3db1cc5ccd1612e6675b790b7460b0","src/options.rs":"041d635c8f6712ca32676a68f06d0245faed5577d9513786e058540ea2a69a7f","src/parse.rs":"be7d13cc84fae79ec7b3aa9e77063fa475a48d74a854423e2c72d75006a25202","src/regex_set.rs":"5cb72fc3714c0d79e9e942d003349c0775fafd7cd0c9603c65f5261883bbf9cf","src/time.rs":"3b763e6fee51d0eb01228dfe28bc28a9f692aff73b2a7b90a030902e0238fca6"},"package":"6bd7710ac8399ae1ebe1e3aac7c9047c4f39f2c94b33c997f482f49e96991f7c"} +diff -up thunderbird-68.3.0/third_party/rust/bindgen/src/ir/analysis/has_vtable.rs.bindgen thunderbird-68.3.0/third_party/rust/bindgen/src/ir/analysis/has_vtable.rs +--- thunderbird-68.3.0/third_party/rust/bindgen/src/ir/analysis/has_vtable.rs.bindgen 2019-12-01 15:29:26.000000000 +0100 ++++ thunderbird-68.3.0/third_party/rust/bindgen/src/ir/analysis/has_vtable.rs 2019-12-04 11:33:09.631921359 +0100 +@@ -9,17 +9,17 @@ use std::ops; + use {HashMap, Entry}; + + /// The result of the `HasVtableAnalysis` for an individual item. +-#[derive(Copy, Clone, Debug, PartialEq, Eq, Ord)] ++#[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord)] + pub enum HasVtableResult { +- /// The item has a vtable, but the actual vtable pointer is in a base +- /// member. +- BaseHasVtable, ++ /// The item does not have a vtable pointer. ++ No, + + /// The item has a vtable and the actual vtable pointer is within this item. + SelfHasVtable, + +- /// The item does not have a vtable pointer. +- No ++ /// The item has a vtable, but the actual vtable pointer is in a base ++ /// member. ++ BaseHasVtable, + } + + impl Default for HasVtableResult { +@@ -28,21 +28,6 @@ impl Default for HasVtableResult { + } + } + +-impl cmp::PartialOrd for HasVtableResult { +- fn partial_cmp(&self, rhs: &Self) -> Option { +- use self::HasVtableResult::*; +- +- match (*self, *rhs) { +- (x, y) if x == y => Some(cmp::Ordering::Equal), +- (BaseHasVtable, _) => Some(cmp::Ordering::Greater), +- (_, BaseHasVtable) => Some(cmp::Ordering::Less), +- (SelfHasVtable, _) => Some(cmp::Ordering::Greater), +- (_, SelfHasVtable) => Some(cmp::Ordering::Less), +- _ => unreachable!(), +- } +- } +-} +- + impl HasVtableResult { + /// Take the least upper bound of `self` and `rhs`. + pub fn join(self, rhs: Self) -> Self { +diff -up thunderbird-68.3.0/third_party/rust/bindgen/src/ir/analysis/sizedness.rs.bindgen thunderbird-68.3.0/third_party/rust/bindgen/src/ir/analysis/sizedness.rs +--- thunderbird-68.3.0/third_party/rust/bindgen/src/ir/analysis/sizedness.rs.bindgen 2019-12-01 15:29:26.000000000 +0100 ++++ thunderbird-68.3.0/third_party/rust/bindgen/src/ir/analysis/sizedness.rs 2019-12-04 11:33:09.632921362 +0100 +@@ -22,13 +22,14 @@ use {HashMap, Entry}; + /// + /// We initially assume that all types are `ZeroSized` and then update our + /// understanding as we learn more about each type. +-#[derive(Copy, Clone, Debug, PartialEq, Eq, Ord)] ++#[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord)] + pub enum SizednessResult { +- /// Has some size that is known to be greater than zero. That doesn't mean +- /// it has a static size, but it is not zero sized for sure. In other words, +- /// it might contain an incomplete array or some other dynamically sized +- /// type. +- NonZeroSized, ++ /// The type is zero-sized. ++ /// ++ /// This means that if it is a C++ type, and is not being used as a base ++ /// member, then we must add an `_address` byte to enforce the ++ /// unique-address-per-distinct-object-instance rule. ++ ZeroSized, + + /// Whether this type is zero-sized or not depends on whether a type + /// parameter is zero-sized or not. +@@ -52,12 +53,11 @@ pub enum SizednessResult { + /// https://github.com/rust-lang-nursery/rust-bindgen/issues/586 + DependsOnTypeParam, + +- /// The type is zero-sized. +- /// +- /// This means that if it is a C++ type, and is not being used as a base +- /// member, then we must add an `_address` byte to enforce the +- /// unique-address-per-distinct-object-instance rule. +- ZeroSized, ++ /// Has some size that is known to be greater than zero. That doesn't mean ++ /// it has a static size, but it is not zero sized for sure. In other words, ++ /// it might contain an incomplete array or some other dynamically sized ++ /// type. ++ NonZeroSized, + } + + impl Default for SizednessResult { +@@ -66,21 +66,6 @@ impl Default for SizednessResult { + } + } + +-impl cmp::PartialOrd for SizednessResult { +- fn partial_cmp(&self, rhs: &Self) -> Option { +- use self::SizednessResult::*; +- +- match (*self, *rhs) { +- (x, y) if x == y => Some(cmp::Ordering::Equal), +- (NonZeroSized, _) => Some(cmp::Ordering::Greater), +- (_, NonZeroSized) => Some(cmp::Ordering::Less), +- (DependsOnTypeParam, _) => Some(cmp::Ordering::Greater), +- (_, DependsOnTypeParam) => Some(cmp::Ordering::Less), +- _ => unreachable!(), +- } +- } +-} +- + impl SizednessResult { + /// Take the least upper bound of `self` and `rhs`. + pub fn join(self, rhs: Self) -> Self { +diff -up thunderbird-68.3.0/third_party/rust/bindgen/src/ir/derive.rs.bindgen thunderbird-68.3.0/third_party/rust/bindgen/src/ir/derive.rs +--- thunderbird-68.3.0/third_party/rust/bindgen/src/ir/derive.rs.bindgen 2019-12-01 15:29:26.000000000 +0100 ++++ thunderbird-68.3.0/third_party/rust/bindgen/src/ir/derive.rs 2019-12-04 11:33:09.632921362 +0100 +@@ -92,10 +92,10 @@ pub trait CanDeriveOrd { + /// + /// Initially we assume that we can derive trait for all types and then + /// update our understanding as we learn more about each type. +-#[derive(Debug, Copy, Clone, PartialEq, Eq, Ord)] ++#[derive(Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord)] + pub enum CanDerive { +- /// No, we cannot. +- No, ++ /// Yes, we can derive automatically. ++ Yes, + + /// The only thing that stops us from automatically deriving is that + /// array with more than maximum number of elements is used. +@@ -103,8 +103,8 @@ pub enum CanDerive { + /// This means we probably can "manually" implement such trait. + Manually, + +- /// Yes, we can derive automatically. +- Yes, ++ /// No, we cannot. ++ No, + } + + impl Default for CanDerive { +@@ -113,22 +113,6 @@ impl Default for CanDerive { + } + } + +-impl cmp::PartialOrd for CanDerive { +- fn partial_cmp(&self, rhs: &Self) -> Option { +- use self::CanDerive::*; +- +- let ordering = match (*self, *rhs) { +- (x, y) if x == y => cmp::Ordering::Equal, +- (No, _) => cmp::Ordering::Greater, +- (_, No) => cmp::Ordering::Less, +- (Manually, _) => cmp::Ordering::Greater, +- (_, Manually) => cmp::Ordering::Less, +- _ => unreachable!() +- }; +- Some(ordering) +- } +-} +- + impl CanDerive { + /// Take the least upper bound of `self` and `rhs`. + pub fn join(self, rhs: Self) -> Self { diff --git a/build-disable-elfhack.patch b/build-disable-elfhack.patch new file mode 100644 index 0000000..67bb731 --- /dev/null +++ b/build-disable-elfhack.patch @@ -0,0 +1,12 @@ +diff -up firefox-115.0.2/toolkit/moz.configure.disable-elfhack firefox-115.0.2/toolkit/moz.configure +--- firefox-115.0.2/toolkit/moz.configure.disable-elfhack 2023-07-18 12:21:22.507358334 +0200 ++++ firefox-115.0.2/toolkit/moz.configure 2023-07-18 12:52:55.972727498 +0200 +@@ -1520,7 +1520,7 @@ with only_when("--enable-compile-environ + "Cannot enable elfhack with lld." + " Use --enable-linker=bfd, --enable-linker=gold, or --disable-elf-hack" + ) +- return True ++ return False + + set_config("USE_ELF_HACK", use_elf_hack) + diff --git a/build-rnp.patch b/build-rnp.patch new file mode 100644 index 0000000..edc9573 --- /dev/null +++ b/build-rnp.patch @@ -0,0 +1,11 @@ +diff -up thunderbird-115.0.1/comm/third_party/rnp/src/libsexp/include/sexp/sexp-error.h.build-rnp thunderbird-115.0.1/comm/third_party/rnp/src/libsexp/include/sexp/sexp-error.h +--- thunderbird-115.0.1/comm/third_party/rnp/src/libsexp/include/sexp/sexp-error.h.build-rnp 2023-07-24 11:38:24.732782411 +0200 ++++ thunderbird-115.0.1/comm/third_party/rnp/src/libsexp/include/sexp/sexp-error.h 2023-07-24 11:38:46.824773498 +0200 +@@ -32,6 +32,7 @@ + #include + #include + #include ++#include + + namespace sexp { + diff --git a/dead.package b/dead.package deleted file mode 100644 index 1365ba8..0000000 --- a/dead.package +++ /dev/null @@ -1 +0,0 @@ -thunderbird package is retired on branch c10s for BAKERY-412 \ No newline at end of file diff --git a/expat-CVE-2022-25235.patch b/expat-CVE-2022-25235.patch new file mode 100644 index 0000000..ac495b1 --- /dev/null +++ b/expat-CVE-2022-25235.patch @@ -0,0 +1,49 @@ +diff -up thunderbird-91.7.0/parser/expat/lib/xmltok.c.expat-CVE-2022-25235 thunderbird-91.7.0/parser/expat/lib/xmltok.c +--- thunderbird-91.7.0/parser/expat/lib/xmltok.c.expat-CVE-2022-25235 2022-03-02 17:57:38.364361168 +0100 ++++ thunderbird-91.7.0/parser/expat/lib/xmltok.c 2022-03-02 17:58:22.235512399 +0100 +@@ -65,13 +65,6 @@ + + ((((byte)[2]) >> 5) & 1)] \ + & (1u << (((byte)[2]) & 0x1F))) + +-#define UTF8_GET_NAMING(pages, p, n) \ +- ((n) == 2 \ +- ? UTF8_GET_NAMING2(pages, (const unsigned char *)(p)) \ +- : ((n) == 3 \ +- ? UTF8_GET_NAMING3(pages, (const unsigned char *)(p)) \ +- : 0)) +- + /* Detection of invalid UTF-8 sequences is based on Table 3.1B + of Unicode 3.2: http://www.unicode.org/unicode/reports/tr28/ + with the additional restriction of not allowing the Unicode +diff -up thunderbird-91.7.0/parser/expat/lib/xmltok_impl.c.expat-CVE-2022-25235 thunderbird-91.7.0/parser/expat/lib/xmltok_impl.c +--- thunderbird-91.7.0/parser/expat/lib/xmltok_impl.c.expat-CVE-2022-25235 2022-03-02 17:57:38.365361172 +0100 ++++ thunderbird-91.7.0/parser/expat/lib/xmltok_impl.c 2022-03-02 18:04:51.240853247 +0100 +@@ -34,7 +34,7 @@ + case BT_LEAD ## n: \ + if (end - ptr < n) \ + return XML_TOK_PARTIAL_CHAR; \ +- if (!IS_NAME_CHAR(enc, ptr, n)) { \ ++ if (IS_INVALID_CHAR(enc, ptr, n) || ! IS_NAME_CHAR(enc, ptr, n)) { \ + *nextTokPtr = ptr; \ + return XML_TOK_INVALID; \ + } \ +@@ -62,7 +62,7 @@ + case BT_LEAD ## n: \ + if (end - ptr < n) \ + return XML_TOK_PARTIAL_CHAR; \ +- if (!IS_NMSTRT_CHAR(enc, ptr, n)) { \ ++ if (IS_INVALID_CHAR(enc, ptr, n) || ! IS_NMSTRT_CHAR(enc, ptr, n)) { \ + *nextTokPtr = ptr; \ + return XML_TOK_INVALID; \ + } \ +@@ -1090,6 +1090,10 @@ PREFIX(prologTok)(const ENCODING *enc, c + case BT_LEAD ## n: \ + if (end - ptr < n) \ + return XML_TOK_PARTIAL_CHAR; \ ++ if (IS_INVALID_CHAR(enc, ptr, n)) { \ ++ *nextTokPtr = ptr; \ ++ return XML_TOK_INVALID; \ ++ } \ + if (IS_NMSTRT_CHAR(enc, ptr, n)) { \ + ptr += n; \ + tok = XML_TOK_NAME; \ diff --git a/expat-CVE-2022-25236.patch b/expat-CVE-2022-25236.patch new file mode 100644 index 0000000..84cafd2 --- /dev/null +++ b/expat-CVE-2022-25236.patch @@ -0,0 +1,40 @@ +diff -up thunderbird-91.7.0/parser/expat/lib/xmlparse.c.expat-CVE-2022-25236 thunderbird-91.7.0/parser/expat/lib/xmlparse.c +--- thunderbird-91.7.0/parser/expat/lib/xmlparse.c.expat-CVE-2022-25236 2022-03-02 18:08:40.085642028 +0100 ++++ thunderbird-91.7.0/parser/expat/lib/xmlparse.c 2022-03-02 18:13:31.838667958 +0100 +@@ -700,8 +700,7 @@ XML_ParserCreate(const XML_Char *encodin + XML_Parser XMLCALL + XML_ParserCreateNS(const XML_Char *encodingName, XML_Char nsSep) + { +- XML_Char tmp[2]; +- *tmp = nsSep; ++ XML_Char tmp[2] = {nsSep, 0}; + return XML_ParserCreate_MM(encodingName, NULL, tmp); + } + #endif +@@ -1276,8 +1275,7 @@ XML_ExternalEntityParserCreate(XML_Parse + would be otherwise. + */ + if (ns) { +- XML_Char tmp[2]; +- *tmp = namespaceSeparator; ++ XML_Char tmp[2] = {parser->m_namespaceSeparator, 0}; + parser = parserCreate(encodingName, &parser->m_mem, tmp, newDtd); + } + else { +@@ -3667,6 +3665,16 @@ addBinding(XML_Parser parser, PREFIX *pr + if (!mustBeXML && isXMLNS + && (len > xmlnsLen || uri[len] != xmlnsNamespace[len])) + isXMLNS = XML_FALSE; ++ // NOTE: While Expat does not validate namespace URIs against RFC 3986, ++ // we have to at least make sure that the XML processor on top of ++ // Expat (that is splitting tag names by namespace separator into ++ // 2- or 3-tuples (uri-local or uri-local-prefix)) cannot be confused ++ // by an attacker putting additional namespace separator characters ++ // into namespace declarations. That would be ambiguous and not to ++ // be expected. ++ if (parser->m_ns && (uri[len] == parser->m_namespaceSeparator)) { ++ return XML_ERROR_SYNTAX; ++ } + } + isXML = isXML && len == xmlLen; + isXMLNS = isXMLNS && len == xmlnsLen; diff --git a/expat-CVE-2022-25315.patch b/expat-CVE-2022-25315.patch new file mode 100644 index 0000000..4d4efb7 --- /dev/null +++ b/expat-CVE-2022-25315.patch @@ -0,0 +1,24 @@ +diff -up thunderbird-91.7.0/parser/expat/lib/xmlparse.c.expat-CVE-2022-25315 thunderbird-91.7.0/parser/expat/lib/xmlparse.c +--- thunderbird-91.7.0/parser/expat/lib/xmlparse.c.expat-CVE-2022-25315 2022-03-02 18:17:50.966583254 +0100 ++++ thunderbird-91.7.0/parser/expat/lib/xmlparse.c 2022-03-02 18:19:27.636924735 +0100 +@@ -2479,6 +2479,7 @@ storeRawNames(XML_Parser parser) + while (tag) { + int bufSize; + int nameLen = sizeof(XML_Char) * (tag->name.strLen + 1); ++ size_t rawNameLen; + char *rawNameBuf = tag->buf + nameLen; + /* Stop if already stored. Since tagStack is a stack, we can stop + at the first entry that has already been copied; everything +@@ -2490,7 +2491,11 @@ storeRawNames(XML_Parser parser) + /* For re-use purposes we need to ensure that the + size of tag->buf is a multiple of sizeof(XML_Char). + */ +- bufSize = nameLen + ROUND_UP(tag->rawNameLength, sizeof(XML_Char)); ++ rawNameLen = ROUND_UP(tag->rawNameLength, sizeof(XML_Char)); ++ /* Detect and prevent integer overflow. */ ++ if (rawNameLen > (size_t)INT_MAX - nameLen) ++ return XML_FALSE; ++ bufSize = nameLen + (int)rawNameLen; + if (bufSize > tag->bufEnd - tag->buf) { + char *temp = (char *)REALLOC(tag->buf, bufSize); + if (temp == NULL) diff --git a/firefox-SIOCGSTAMP.patch b/firefox-SIOCGSTAMP.patch new file mode 100644 index 0000000..673cb07 --- /dev/null +++ b/firefox-SIOCGSTAMP.patch @@ -0,0 +1,16 @@ +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); diff --git a/gen_cbindgen-vendor.sh b/gen_cbindgen-vendor.sh new file mode 100755 index 0000000..c2b60f0 --- /dev/null +++ b/gen_cbindgen-vendor.sh @@ -0,0 +1,32 @@ +#!/bin/bash +set -x + +# Dummy Cargo.toml file with cbindgen dependency +cat > Cargo.toml </pref ++ rv = NS_GetSpecialDirectory(NS_APP_PREFS_SYSTEM_CONFIG_DIR, ++ getter_AddRefs(jsFile)); ++ NS_ENSURE_SUCCESS(rv, rv); ++ ++ rv = jsFile->AppendNative(nsLiteralCString("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-115.0.2/modules/libpref/Preferences.cpp.1170092 firefox-115.0.2/modules/libpref/Preferences.cpp +--- firefox-115.0.2/modules/libpref/Preferences.cpp.1170092 2023-07-10 21:09:00.000000000 +0200 ++++ firefox-115.0.2/modules/libpref/Preferences.cpp 2023-07-17 10:33:23.444355156 +0200 +@@ -4825,6 +4825,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 find; +diff -up firefox-115.0.2/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-115.0.2/toolkit/xre/nsXREDirProvider.cpp +--- firefox-115.0.2/toolkit/xre/nsXREDirProvider.cpp.1170092 2023-07-10 22:57:20.000000000 +0200 ++++ firefox-115.0.2/toolkit/xre/nsXREDirProvider.cpp 2023-07-17 10:56:25.309692121 +0200 +@@ -72,6 +72,7 @@ + #endif + #ifdef XP_UNIX + # include ++# include "nsIXULAppInfo.h" + #endif + #ifdef XP_IOS + # include "UIKitDirProvider.h" +@@ -478,6 +479,17 @@ nsXREDirProvider::GetFile(const char* aP + rv = file->AppendNative(nsLiteralCString(PREF_OVERRIDE_DIRNAME)); + NS_ENSURE_SUCCESS(rv, rv); + rv = EnsureDirectoryExists(file); ++ } else if (!strcmp(aProperty, NS_APP_PREFS_SYSTEM_CONFIG_DIR)) { ++ nsCString sysConfigDir = nsLiteralCString("/etc/"); ++ nsCOMPtr 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); ++ NS_NewNativeLocalFile(sysConfigDir, false, getter_AddRefs(file)); ++ rv = EnsureDirectoryExists(file); + } else { + // We don't know anything about this property. Fail without warning, because + // otherwise we'll get too much warning spam due to +@@ -694,6 +706,16 @@ nsXREDirProvider::GetFiles(const char* a + } + #endif + ++ // Add /etc//pref/ directory if it exists ++ nsCOMPtr systemPrefDir; ++ rv = NS_GetSpecialDirectory(NS_APP_PREFS_SYSTEM_CONFIG_DIR, ++ getter_AddRefs(systemPrefDir)); ++ if (NS_SUCCEEDED(rv)) { ++ rv = systemPrefDir->AppendNative(nsLiteralCString("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-115.0.2/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 firefox-115.0.2/xpcom/io/nsAppDirectoryServiceDefs.h +--- firefox-115.0.2/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 2023-07-10 21:09:13.000000000 +0200 ++++ firefox-115.0.2/xpcom/io/nsAppDirectoryServiceDefs.h 2023-07-17 10:33:23.444355156 +0200 +@@ -58,6 +58,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" diff --git a/mozilla-1245783.patch b/mozilla-1245783.patch new file mode 100644 index 0000000..3452616 --- /dev/null +++ b/mozilla-1245783.patch @@ -0,0 +1,17 @@ +# 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) + diff --git a/mozilla-1512162.patch b/mozilla-1512162.patch new file mode 100644 index 0000000..0ee0ed5 --- /dev/null +++ b/mozilla-1512162.patch @@ -0,0 +1,21 @@ +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. + void trace(JSTracer* aTrc); diff --git a/mozilla-526293.patch b/mozilla-526293.patch new file mode 100644 index 0000000..a03796a --- /dev/null +++ b/mozilla-526293.patch @@ -0,0 +1,14 @@ +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 || diff --git a/mozilla-build-arm.patch b/mozilla-build-arm.patch new file mode 100644 index 0000000..f98cbe3 --- /dev/null +++ b/mozilla-build-arm.patch @@ -0,0 +1,12 @@ +diff -up firefox-29.0/mozilla-release/gfx/ycbcr/moz.build.arm firefox-29.0/mozilla-release/gfx/ycbcr/moz.build +--- firefox-29.0/mozilla-release/gfx/ycbcr/moz.build.arm 2014-04-22 07:27:47.000000000 +0200 ++++ firefox-29.0/mozilla-release/gfx/ycbcr/moz.build 2014-04-22 16:40:34.862849368 +0200 +@@ -61,7 +61,7 @@ else: + 'yuv_row_other.cpp', + ] + +-if CONFIG['CPU_ARCH'] == 'arm' and CONFIG['HAVE_ARM_NEON']: ++if CONFIG['HAVE_ARM_NEON']: + SOURCES += [ + 'yuv_row_arm.s', + ] diff --git a/node-stdout-nonblocking-wrapper b/node-stdout-nonblocking-wrapper new file mode 100755 index 0000000..b2814b8 --- /dev/null +++ b/node-stdout-nonblocking-wrapper @@ -0,0 +1,2 @@ +#!/bin/sh +exec /usr/bin/node "$@" 2>&1 | cat - diff --git a/rhbz-1219542-s390-build.patch b/rhbz-1219542-s390-build.patch new file mode 100644 index 0000000..f94e43a --- /dev/null +++ b/rhbz-1219542-s390-build.patch @@ -0,0 +1,23 @@ +diff -up firefox-55.0/js/src/old-configure.in.rhbz-1219542-s390 firefox-55.0/js/src/old-configure.in +--- firefox-55.0/js/src/old-configure.in.rhbz-1219542-s390 2017-07-31 18:20:48.000000000 +0200 ++++ firefox-55.0/js/src/old-configure.in 2017-08-02 14:31:32.190243669 +0200 +@@ -541,7 +541,7 @@ case "$host" in + + *-linux*|*-kfreebsd*-gnu|*-gnu*) + HOST_CFLAGS="$HOST_CFLAGS -DXP_UNIX" +- HOST_OPTIMIZE_FLAGS="${HOST_OPTIMIZE_FLAGS=-O3}" ++ HOST_OPTIMIZE_FLAGS="${HOST_OPTIMIZE_FLAGS=-O1}" + ;; + + *) +@@ -617,8 +617,8 @@ case "$target" in + + *-*linux*) + if test "$GNU_CC" -o "$GNU_CXX"; then +- MOZ_PGO_OPTIMIZE_FLAGS="-O3" +- MOZ_OPTIMIZE_FLAGS="-O3" ++ MOZ_PGO_OPTIMIZE_FLAGS="-O1" ++ MOZ_OPTIMIZE_FLAGS="-O1" + if test -z "$CLANG_CC"; then + MOZ_OPTIMIZE_FLAGS="-freorder-blocks $MOZ_OPTIMIZE_FLAGS" + fi diff --git a/rhbz-1354671.patch b/rhbz-1354671.patch new file mode 100644 index 0000000..7660f14 --- /dev/null +++ b/rhbz-1354671.patch @@ -0,0 +1,12 @@ +diff -up firefox-60.5.0/layout/base/nsIPresShell.h.1354671 firefox-60.5.0/layout/base/nsIPresShell.h +--- firefox-60.5.0/layout/base/nsIPresShell.h.1354671 2019-01-22 16:08:40.796539950 +0100 ++++ firefox-60.5.0/layout/base/nsIPresShell.h 2019-01-22 16:10:25.106069228 +0100 +@@ -204,7 +204,7 @@ class nsIPresShell : public nsStubDocume + * 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) { + void* result = mFrameArena.AllocateByFrameID(aID, aSize); + RecordAlloc(result); + return result;