summaryrefslogtreecommitdiffstats
path: root/build/docs/supported-configurations.rst
diff options
context:
space:
mode:
Diffstat (limited to 'build/docs/supported-configurations.rst')
-rw-r--r--build/docs/supported-configurations.rst95
1 files changed, 95 insertions, 0 deletions
diff --git a/build/docs/supported-configurations.rst b/build/docs/supported-configurations.rst
new file mode 100644
index 0000000000..4df06d6600
--- /dev/null
+++ b/build/docs/supported-configurations.rst
@@ -0,0 +1,95 @@
+Supported build targets
+=======================
+
+ .. role:: strikethrough
+
+There are three tiers of **supported Firefox build targets** at this
+time. These tiers represent the shared engineering priorities of the
+Mozilla project.
+
+.. note::
+
+ Sheriffs are in charge of monitoring the tree. Their definition for tiers
+ is for automation jobs, which tells a developer what is expected of them when
+ they land code. This document is about the tiers of supported build targets,
+ which tells a person compiling/using Firefox what they can expect from Mozilla.
+ See the `job tier definition <https://wiki.mozilla.org/Sheriffing/Job_Visibility_Policy#Overview_of_the_Job_Visibility_Tiers>`__ for more information.
+
+.. _tier-1:
+
+The term **"Tier-1 platform"** refers to those platforms - CPU
+architectures and operating systems - that are the primary focus of
+Firefox development efforts. Tier-1 platforms are fully supported by
+Mozilla's `continuous integration processes <https://treeherder.mozilla.org/>`__ and the
+:ref:`Try Server`. Any proposed change to Firefox on these
+platforms that results in build failures, test failures, performance
+regressions or other major problems **will be reverted immediately**.
+
+
+The **Tier-1 Firefox platforms** and their supported compilers are:
+
+- Android on Linux x86, x86-64, ARMv7 and ARMv8-A (clang)
+- Linux/x86 and x86-64 (gcc and clang)
+- macOS 10.12 and later on x86-64 and AArch64 (clang)
+- Windows/x86, x86-64 and AArch64 (clang-cl)
+
+Prior to Firefox 63, Windows/x86 and Windows/x86-64 relied on the MSVC
+compiler; from **Firefox 63 onward MSVC is not supported**. Older 32-bit
+x86 CPUs without SSE2 instructions such as the Pentium III and Athlon XP
+are also **not considered Tier-1 platforms, and are not supported**.
+Note also that while Windows/x86 and ARM/AArch64 are supported *as build
+targets*, it is not possible to build Firefox *on* Windows/x86 or
+Windows/AArch64 systems.
+
+.. _tier-2:
+
+**Tier-2 platforms** are actively maintained by the Mozilla community,
+though with less rigorous requirements. Proposed changes resulting in
+breakage or regressions limited to these platforms **may not immediately
+result in reversion**. However, developers who break these platforms are
+expected to work with platform maintainers to fix problems, and **may be
+required to revert their changes** if a fix cannot be found.
+
+The **Tier-2 Firefox platforms** and their supported compilers are:
+
+- Linux/AArch64 (clang)
+- Windows/x86 (mingw-clang) - maintained by Tom Ritter and Jacek Caban
+ -
+
+ - *Note that some features of this platform are disabled, as they
+ require MS COM or the w32api project doesn't expose the necessary
+ Windows APIs.*
+
+.. _tier-3:
+
+**Tier-3 platforms** have a maintainer or community which attempt to
+keep the platform working. These platforms are **not supported by our
+continuous integration processes**, and **Mozilla does not routinely
+test on these platforms**, nor do we block further development on the
+outcomes of those tests.
+
+At any given time a Firefox built from mozilla-central for these
+platforms may or may not work correctly or build at all.
+
+**Tier-3 Firefox platforms** include: 
+
+- Linux on various CPU architectures including ARM variants not listed
+ above, PowerPC, and x86 CPUs without SSE2 support - maintained by
+ various Linux distributions
+- FreeBSD/x86, x86-64, Aarch64 (clang) - maintained by Jan Beich
+- OpenBSD/x86, x86-64 (clang) - maintained by Landry Breuil
+- NetBSD/x86-64 (gcc) - maintained by David Laight
+- Solaris/x86-64, sparc64 (gcc) - maintained by Petr Sumbera
+- :strikethrough:`Windows/x86-64 (mingw-gcc)` - Unsupported due to
+ requirements for clang-bindgen
+
+If you're filing a bug against Firefox on a Tier-3 platform (or any
+combination of OS, CPU and compiler not listed above) please bear in
+mind that Mozilla developers do not reliably have access to non-Tier-1
+platforms or build environments. To be actionable bug reports against
+non-Tier-1 platforms should include as much information as possible to
+help the owner of the bug determine the cause of the problem and the
+proper solution. If you can provide a patch, a regression range or
+assist in verifying that the developer's patches work for your platform,
+that would help a lot towards getting your bugs fixed and checked into
+the tree.