[PATCH] D47073: Document and Enforce new Host Compiler Policy

Mehdi AMINI via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jan 11 14:34:40 PST 2019


mehdi_amini added a comment.

In D47073#1354798 <https://reviews.llvm.org/D47073#1354798>, @zturner wrote:

> In D47073#1354779 <https://reviews.llvm.org/D47073#1354779>, @mehdi_amini wrote:
>
> > I'd like to see `docs/GettingStarted.rst` updated to include some language from what Chandler mentioned. In particular upgrading a toolchain has to be *motivated* by explicit benefits, and the toolchains dropped must be evaluated with respect to the general availability for the users.
>
>
> I think this is implied [...]


Right, I would make it more explicit:

> For GCC and Clang, LLVM's guideline is to support all major compiler
>  versions released at least 3 years from the date in which the previous version was
>  branched. This time-based guideline is not strict; we will balance the benefits to
>  drop support for older compilers in terms of features available for development
>  with the availability of more recent versions on the most widely used platforms
>  (for example considering Ubuntu LTS, etc.).



================
Comment at: cmake/modules/CheckCompilerVersion.cmake:24
+set(APPLECLANG_MIN 7.3)
+set(APPLECLANG_WARN 8.1)
+
----------------
zturner wrote:
> mehdi_amini wrote:
> > Has the choice of these versions be motivated in a thread on the mailing list? I.e. why go from clang 3.1 to clang 3.6 and not clang 3.5 or 3.7 for example?
> I think the idea is to accept the lowest version that supports all of the features we need.
As per the discussion about the guideline, there should be an email thread mentioning what are these features, what is the minimum version of compiler for each, and what is the availability (i.e. for example: gcc 5.2 means available by default on FreeBSD W and Ubuntu X and with PPA in Ubuntu Y. Gcc 6.3 means warning in Red Hat Z, etc.).



CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D47073/new/

https://reviews.llvm.org/D47073





More information about the llvm-commits mailing list