Previous Thread: https://groups.google.com/forum/#!topic/mozilla.dev.platform/r3mYWbb42pM
As of a few hours ago, there is a new Tier 2 MinGW build on TaskCluster. It's in the 'Windows MinGW all' line, with the group WMC64 for 'Windows MinGW Clang x64'. The MinGW builds are part of the Tor Uplift project, where we work closely with Tor to upstream their patches and in general move Tor Browser closer and closer to 'Firefox with Addons and Pref Changes' - instead of a fork of Firefox with a bunch of custom patches. Tor is currently using ESR releases: the bump to ESR60 (which occurred last week! It's a huge release for them with a lot of UX improvements: https://blog.torproject.org/new-release-tor-browser-80 ) was a lot smoother - build-wise - than other bumps because we had the MinGW build running in TC. Without keeping the MinGW build working, every ESR they have to go through a potentially colossal amount of work on a short timescale to get the build working under MinGW again. By minimizing their effort in fixing the build, rebasing patches and the like - we can free up their limited resources to continue to research and experiment on privacy technology like First Party Isolation and Fingerprinting Resistance. Now, you might be wondering "I thought we had a MinGW build?" We did. But we had to disable it. Shortly after 60 went to beta, we removed support for --disable-stylo. Stylo requires libclang to build; and getting that working with MinGW was very complicated (see https://bugzilla.mozilla.org/show_bug.cgi?id=1390583) so MinGW fell behind and had to be disabled. However, thanks (again) to the efforts of all the reviewers, build peers, and especially Jacek Caban - we've been able to re-enable a MinGW build. We are now building with clang using the MinGW headers. (Previously it was gcc.) I believe we're the first 'real' project that is building with MinGW-clang, and Tor will be the first major project to ship it (but I could be wrong there.) In configure and moz.build files, CC_TYPE will be 'clang-cl' for our normal Windows builds (which build on Windows) and will be 'clang' for the MinGW-clang builds (which build on Linux). There are still some outstanding issues: I hope to land a x86 build, we need to remove some of the --disable-foo flags, and once ESR60 gets a NSS uplift I intend the backport the jobs there also. We hope to get pdbs generating so we can debug easier - major appreciation to David Major and Bob Owen who both have debugged pretty ugly crashes without symbols. Eventually, I'd like to enable a limited set of tests to catch browser crashes. Because there is no path forward for getting the MinGW gcc builds re-enabled (nor anyone who wants to work on it...) I intend to remove the (disabled) build jobs from the tree also. And finally I need to document how to get a local build environment for it. MinGW is Tier 2, and sometimes breaking it is unavoidable because the fix needs to happen upstream in MinGW. Other times breaking it is avoidable, and one just needs to special-case it. The Tor Uplift team and Tor themselves greatly appreciate all of your efforts to keep the build green. As always, if you have a MinGW question or a build error you can't quite understand - feel free to reach out to me via irc or email. -tom _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform