Created attachment 173609 [details] firefox48.0.diff Today, beat from gecko@ helps me, to update Firefox 48.0 make patch works fine, but poudriere stop with a configure_error (mozbuild.configure.options.InvalidOptionError: Environment variable name must be all uppercase). I have no idea how I could solve the problem. I upload the patch, as it is currently, and the log from Poudriere 10.3 amd64. I hope, some people have a idea. cheers Jochen
Created attachment 173610 [details] poudriere log 10.3amd64
Created attachment 173645 [details] wip My version isn't much different except it breaks after some configure options were refactored upstream.
Currently builds FreeBSD 10.3 and 12 amd64 and i386. FreeBSD 9.3 breaks with an error rate: http://builder.miwibox.org/data/93amd64-ports/2016-08-17_16h49m55s/logs/errors/firefox-48.0,1.log
Created attachment 173799 [details] Patch for 10.3 + 12
(In reply to Jochen Neumeister from comment #4) Aren't some patches in files/ directory should be removed? `make patch` fails to apply cleanly for me. It complains to patch-bug1233275, patch-bug1256136, and patch-bug1285501
And there is firefox 48.0.1 released already, that is fixing some breakages. May be it worth to adjust the patch to that version?
So here is my attempt of porting to 48.0.1 (was built fine in 12 poudriere, not tested with others versions). Actually this is a combination of patches by Jochen and jbeich@. Most important is that style of widgets finally looks as it should with gtk 3.20! It's just port directory tarball.
Created attachment 173872 [details] Firefox 48.0.1 port directory
testbuilds@work
Hi all, today, i start at zero with 48.0.1. now I have a problem with patch-modules-libpref-init-all.js The following part in modules/libpref/init/all.js is no longer exists: // Set the default values, and then override per-platform as needed pref("layers.offmainthreadcomposition.enabled", true); Does it make sense, the patch to use anyway? While, when "pref(......, true);" not longer exist, make "pref(....., false);" no sense, or have I got that wrong? Your feedback?
files/patch-modules-libpref-init-all.js can be removed as long as BUNDLED_CAIRO=off doesn't make firefox crash after a hour of usage.
(In reply to Jochen Neumeister from comment #0) I'm getting the exact same error when using the latest patch (the tarball uploaded by Ruslan on 19 Aug 2016).
Created attachment 174398 [details] Patch to update to 48.0.2 I took everything that others--Thank you, all!--had put together, updated to 48.0.2 and deleted patches that are no longer needed. Removed: - patch-bug1233275 (included in 48.0.2) - patch-bug1285501 (included in 48.0.2) - patch-modules-libpref-init-all.js (apparently no longer needed) Regarding the last patch that disabled layers.offmainthreadcomposition.enabled by default, I have been running with that enabled for a long time. With 48.0.1 and 48.0.2 (and previous versions), I have not noticed any crashes with Firefox built with BUNDLED_CAIRO=off. Currently, my system has cairo-1.14.6_1,2. This was all tested on FreeBSD 10-STABLE amd64. Please let me know if there was a specific way to crash Firefox with layers.offmainthreadcomposition.enabled set to true, so I may test it.
testbuilding right now
Comment on attachment 174398 [details] Patch to update to 48.0.2 Mk/Uses/gecko.mk change has to be careful to not break -i18n port(s), Mk/bsd.gecko.mk - not break www/firefox-esr, www/seamonkey, etc. $ make all-depends-list -C www/firefox-i18n /usr/ports/ports-mgmt/pkg /usr/ports/archivers/zip /usr/ports/archivers/unzip /usr/ports/www/xpi-quick-locale-switcher $ make -C www/firefox-esr ... rm -f libjemalloc.a libjemalloc.a.desc /wrkdirs/usr/ports/www/firefox-esr/work/firefox-45.3.0esr/obj-x86_64-portbld-freebsd10.3/_virtualenv/bin/python /wrkdirs/usr/ports/www/firefox-esr/work/firefox-45.3.0esr/config/expandlibs_exec.py --extract -- : crs libjemalloc.a ctl.o Unified_c_memory_jemalloc0.o Unified_c_memory_jemalloc1.o error: Launching [':', 'crs', 'libjemalloc.a', 'ctl.o', 'Unified_c_memory_jemalloc0.o', 'Unified_c_memory_jemalloc1.o'] : [Errno 2] No such file or directory Traceback (most recent call last): File "/wrkdirs/usr/ports/www/firefox-esr/work/firefox-45.3.0esr/config/expandlibs_exec.py", line 354, in <module> exit(main(sys.argv[1:])) File "/wrkdirs/usr/ports/www/firefox-esr/work/firefox-45.3.0esr/config/expandlibs_exec.py", line 343, in main raise e OSError: [Errno 2] No such file or directory >-.elif ${OPSYS} != FreeBSD || ${OSVERSION} < 1000012 || ${MOZILLA_VER:R:R} >= 37 >+.elif ${OPSYS} != FreeBSD || ${OSVERSION} < 1000012 || \ >+ ${MOZILLA_VER:R:R} >= 37 && ${MOZILLA_VER:R:R} < 48 > MOZ_OPTIONS+= --enable-jemalloc > .endif Bundled jemalloc is still useful to plug missing functionality[1] not provided by base malloc(3) on old FreeBSD systems. What broke upstream is passing MOZ_JEMALLOC4=1 together with --enable-jemalloc as one is supposed to use --enable-jemalloc=4 instead. --enable-jemalloc alone never worked on FreeBSD because Mozilla's fork has bitrotten[2] the support but no such an issue exists in upstream jemalloc. Unfortunately, Mozilla doesn't allocate (human) resources to fix issues on Tier3 platforms. jemalloc 3.0 is when things started to converge for Facebook, Mozilla, various BSDs, but even with jemalloc 4.2.1 it's still not enabled by default for Firefox (release branches). [1] jemalloc API usage in gecko ports: - heap-* stats via mallctl(3) in about:memory (a warning otherwise) - freeing dirty pages on memory pressure via mallctl(3) - optimized allocation via nallocx(3) in sqlite and AudioCompactor - MALLOC_CONF=narenas:1,tcache:false tuning - G_SLICE=always-malloc tuninig [2] https://bugzilla.mozilla.org/show_bug.cgi?id=1153683
Firefox 49.0 is going to be released around 2016-09-13, so you may want to adjust update pending new security advisories.
(In reply to Kurt Jaeger from comment #14) testbuilds are all fine (except 9.3a, which depends on ftp/curl, which fails to build. So: Should this update be committed ?
(In reply to Kurt Jaeger from comment #17) I'm not in charge here, but I was under expression that 9.3 reaches it's EOL at 1 of September. Now I see that it was extended to 31 of December((
(In reply to Kurt Jaeger from comment #17) > testbuilds are all fine (except 9.3a...) Did you confirm other consumers are fine with Mk/* changes (see comment 15)? Otherwise, wait for beefy* boxes to start building past ports r421490 in order to avoid mixing regression windows.
(In reply to Jan Beich from comment #19) No, I only verified www/firefox itself.
A commit references this bug: Author: jbeich Date: Thu Sep 8 06:48:55 UTC 2016 New revision: 421531 URL: https://svnweb.freebsd.org/changeset/ports/421531 Log: www/firefox: update to 49.0 (rc2) Bump PORTREVISION to account for slightly different behavior in other gecko@ ports and to get a discrete regression window. Changes: https://www.mozilla.org/firefox/49.0/releasenotes/ PR: 211792 Submitted by: Jochen Neumeister <joneum@bsdproject.de> (based on) Security: 2c57c47e-8bb3-4694-83c8-9fc3abad3964 MFH: 2016Q3 Changes: head/Mk/Uses/gecko.mk head/Mk/bsd.gecko.mk head/mail/thunderbird/Makefile head/www/firefox/Makefile head/www/firefox/Makefile.options head/www/firefox/distinfo head/www/firefox/files/patch-bug1013882 head/www/firefox/files/patch-bug1021761 head/www/firefox/files/patch-bug1233275 head/www/firefox/files/patch-bug1245076 head/www/firefox/files/patch-bug1268816 head/www/firefox/files/patch-bug1269171 head/www/firefox/files/patch-bug1285501 head/www/firefox/files/patch-bug1288587 head/www/firefox/files/patch-bug847568 head/www/firefox/files/patch-ijg-libjpeg head/www/firefox/files/patch-modules-libpref-init-all.js head/www/firefox/files/patch-z-bug517422 head/www/firefox-esr/Makefile head/www/firefox-i18n/Makefile head/www/firefox-i18n/distinfo head/www/libxul/Makefile head/www/seamonkey/Makefile head/www/seamonkey/files/patch-bug1234033
A commit references this bug: Author: jbeich Date: Thu Sep 8 06:49:11 UTC 2016 New revision: 421532 URL: https://svnweb.freebsd.org/changeset/ports/421532 Log: www/firefox: re-enable OMTC for BUNDLED_CAIRO=off (backing out r393805) OMTC is also required to support Electrolysis (called Multiprocess Windows in about:support) introduced in Firefox 48 via e10srollout@mozilla.org system addon. PR: 202174, 211792 Tested by: scf MFH: 2016Q3 Changes: head/www/firefox/Makefile head/www/firefox/files/patch-modules-libpref-init-all.js
If I've missed something file a new bug. 9.x should build fine but fixing it required lang/gcc5 to build widevine-adaptor[1] and disabling DTRACE because "javascript-trace.d: failed to allocate space for probe". [1] unused on FreeBSD per https://bugzilla.mozilla.org/show_bug.cgi?id=1295853#c4
A commit references this bug: Author: jbeich Date: Sun Sep 11 23:56:32 UTC 2016 New revision: 421884 URL: https://svnweb.freebsd.org/changeset/ports/421884 Log: MFH: r421531 r421645 www/firefox: update to 49.0 (rc2) Bump PORTREVISION to account for slightly different behavior in other gecko@ ports and to get a discrete regression window. Changes: https://www.mozilla.org/firefox/49.0/releasenotes/ PR: 211792 Submitted by: Jochen Neumeister <joneum@bsdproject.de> (based on) Security: 2c57c47e-8bb3-4694-83c8-9fc3abad3964 Approved by: ports-secteam (feld) Changes: _U branches/2016Q3/ branches/2016Q3/Mk/Uses/gecko.mk branches/2016Q3/Mk/bsd.gecko.mk branches/2016Q3/mail/thunderbird/Makefile branches/2016Q3/www/firefox/Makefile branches/2016Q3/www/firefox/Makefile.options branches/2016Q3/www/firefox/distinfo branches/2016Q3/www/firefox/files/patch-bug1013882 branches/2016Q3/www/firefox/files/patch-bug1021761 branches/2016Q3/www/firefox/files/patch-bug1233275 branches/2016Q3/www/firefox/files/patch-bug1288587 branches/2016Q3/www/firefox/files/patch-bug847568 branches/2016Q3/www/firefox/files/patch-ijg-libjpeg branches/2016Q3/www/firefox/files/patch-modules-libpref-init-all.js branches/2016Q3/www/firefox/files/patch-z-bug517422 branches/2016Q3/www/firefox-esr/Makefile branches/2016Q3/www/firefox-i18n/Makefile branches/2016Q3/www/firefox-i18n/distinfo branches/2016Q3/www/libxul/Makefile branches/2016Q3/www/seamonkey/Makefile branches/2016Q3/www/seamonkey/files/patch-bug1234033
A commit references this bug: Author: jbeich Date: Sun Sep 11 23:58:51 UTC 2016 New revision: 421886 URL: https://svnweb.freebsd.org/changeset/ports/421886 Log: MFH: r421532 www/firefox: re-enable OMTC for BUNDLED_CAIRO=off (backing out r393805) OMTC is also required to support Electrolysis (called Multiprocess Windows in about:support) introduced in Firefox 48 via e10srollout@mozilla.org system addon. PR: 202174, 211792 Tested by: scf Approved by: ports-secteam (feld) Changes: _U branches/2016Q3/ branches/2016Q3/www/firefox/Makefile branches/2016Q3/www/firefox/files/patch-modules-libpref-init-all.js