supported-configurations.rst (6471B)
1 Supported Build Hosts and Targets 2 ================================= 3 4 .. role:: strikethrough 5 6 There are three tiers of supported Firefox build hosts and targets. 7 These tiers represent the shared engineering priorities of the Mozilla project. 8 9 The "build host" is the machine that is performing the build of Firefox, and 10 the "build target" is the machine that will run the built Firefox application. 11 For example, if you were building Firefox for Android on your Linux computer, then the 12 Linux computer would be the "build host". 13 14 .. note:: 15 16 Sheriffs are in charge of monitoring the tree. Their definition for tiers 17 is for automation jobs, which tells a developer what is expected of them when 18 they land code. This document is about the tiers of supported build hosts and targets, 19 which tells a person compiling/using Firefox what they can expect from Mozilla. 20 See the `job tier definition <https://wiki.mozilla.org/Sheriffing/Job_Visibility_Policy#Overview_of_the_Job_Visibility_Tiers>`__ for more information. 21 22 23 .. _build_hosts: 24 25 Supported Build Hosts 26 --------------------- 27 28 While we want to help users resolve build-related issues on their systems, we 29 are unable to help resolve build system issues on all possible operating 30 systems and versions. 31 32 .. _tier_1_hosts: 33 34 Tier-1 Hosts and Toolchains 35 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 36 37 Support is available for the following **host operating systems** and versions 38 when building for a :ref:`Tier-1 Firefox build target<tier_1_targets>`, including 39 cross-compilation where available: 40 41 * Ubuntu Linux x86_64 42 * Current stable release 43 * Previous stable release 44 * Current LTS release 45 * Debian Linux x86_64 46 * Current stable release 47 * Current testing release 48 * Fedora Linux x86_64 49 * Current stable release 50 * Previous stable release 51 * macOS Intel and M1 52 * Current major macOS release 53 * Previous major macOS release 54 * Windows x86_64 55 * Windows 10 with MozillaBuild Environment 56 * Windows 11 with MozillaBuild Environment 57 58 Tier-2 Hosts and Toolchains 59 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 60 61 In addition to the limitations outlined above in the Tier-1 list, our ability 62 to provide assistance with build issues using/targeting Tier-2 63 hosts/targets/compilers is not unbounded. 64 65 While we will endeavour to make a best effort to help resolve issues, you may 66 be referred to the relevant community maintainers for further support. 67 68 The Tier-2 hosts are: 69 70 * Other Linux x86_64 distributions and/or versions 71 * Older macOS versions 72 * Older Windows x86_64 versions 73 74 Tier-3 Hosts and Toolchains 75 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 76 77 We cannot provide any guarantees of assistance in resolving build issues using 78 or targeting Tier-3 platforms. 79 80 81 Supported Build Targets 82 ----------------------- 83 84 .. _tier_1_targets: 85 86 Tier-1 Targets 87 ^^^^^^^^^^^^^^ 88 89 The term **"Tier-1 platform"** refers to those platforms - CPU 90 architectures and operating systems - that are the primary focus of 91 Firefox development efforts. Tier-1 platforms are fully supported by 92 Mozilla's `continuous integration processes <https://treeherder.mozilla.org/>`__ and the 93 :ref:`Pushing to Try`. Any proposed change to Firefox on these 94 platforms that results in build failures, test failures, performance 95 regressions or other major problems **will be reverted immediately**. 96 97 98 The **Tier-1 Firefox platforms** and their supported compilers are: 99 100 - Android on Linux x86-64, ARMv7 and ARMv8-A (clang) 101 - Linux x86-64 (gcc and clang), Linux/AArch64 (clang) 102 - macOS 10.15 and later on x86-64 and AArch64 (clang) 103 - Windows/x86, x86-64 and AArch64 (clang-cl) 104 105 Prior to Firefox 63, Windows/x86 and Windows/x86-64 relied on the MSVC 106 compiler; from **Firefox 63 onward MSVC is not supported**. Older 32-bit 107 x86 CPUs without SSE2 instructions such as the Pentium III and Athlon XP 108 are also **not considered Tier-1 platforms, and are not supported**. 109 Note also that while Windows/x86 and ARM/AArch64 are supported *as build 110 targets*, it is not possible to build Firefox *on* Windows/x86 or 111 Windows/AArch64 systems. 112 113 Tier-2 Targets 114 ^^^^^^^^^^^^^^ 115 116 **Tier-2 platforms** are actively maintained by the Mozilla community, 117 though with less rigorous requirements. Proposed changes resulting in 118 breakage or regressions limited to these platforms **may not immediately 119 result in reversion**. However, developers who break these platforms are 120 expected to work with platform maintainers to fix problems, and **may be 121 required to revert their changes** if a fix cannot be found. 122 123 The **Tier-2 Firefox platforms** and their supported compilers are: 124 125 - Windows/x86 (mingw-clang) - maintained by Tom Ritter and Jacek Caban 126 - 127 128 - *Note that some features of this platform are disabled, as they 129 require MS COM or the w32api project doesn't expose the necessary 130 Windows APIs.* 131 132 Tier-3 Targets 133 ^^^^^^^^^^^^^^ 134 135 **Tier-3 platforms** have a maintainer or community which attempt to 136 keep the platform working. These platforms are **not supported by our 137 continuous integration processes**, and **Mozilla does not routinely 138 test on these platforms**, nor do we block further development on the 139 outcomes of those tests. 140 141 At any given time a Firefox built from mozilla-central for these 142 platforms may or may not work correctly or build at all. 143 144 **Tier-3 Firefox platforms** include: 145 146 - Linux on various CPU architectures including ARM variants not listed 147 above, PowerPC, and x86 CPUs - maintained by various Linux distributions 148 - FreeBSD/x86, x86-64, Aarch64 (clang) - `maintained by gecko@FreeBSD.org <https://www.freshports.org/www/firefox/>`__ 149 - OpenBSD/x86, x86-64 (clang) - maintained by Landry Breuil 150 - NetBSD/x86-64 (gcc) - maintained by David Laight 151 - Solaris/x86-64, sparc64 (gcc) - maintained by Petr Sumbera 152 - :strikethrough:`Windows/x86-64 (mingw-gcc)` - Unsupported due to 153 requirements for clang-bindgen 154 155 If you're filing a bug against Firefox on a Tier-3 platform (or any 156 combination of OS, CPU and compiler not listed above) please bear in 157 mind that Mozilla developers do not reliably have access to non-Tier-1 158 platforms or build environments. To be actionable bug reports against 159 non-Tier-1 platforms should include as much information as possible to 160 help the owner of the bug determine the cause of the problem and the 161 proper solution. If you can provide a patch, a regression range or 162 assist in verifying that the developer's patches work for your platform, 163 that would help a lot towards getting your bugs fixed and checked into 164 the tree.