[PATCH] D156286: [docs] Bump minimum GCC version to 7.5
Fangrui Song via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Jul 25 19:58:32 PDT 2023
MaskRay created this revision.
MaskRay added reviewers: thieta, mehdi_amini, jyknight, jhenderson, hubert.reinterpretcast, hans, tstellar, cor3ntin.
Herald added a reviewer: bollu.
Herald added subscribers: bzcheeseman, rriddle, javed.absar.
Herald added a reviewer: ctetreau.
Herald added a project: All.
MaskRay requested review of this revision.
Herald added a reviewer: jdoerfert.
Herald added a reviewer: sstefan1.
Herald added subscribers: llvm-commits, wangpc, stephenneuendorffer.
Herald added a project: LLVM.
Building llvm/ with GCC 7.3 has many errors from structured bindings, e.g.
llvm/lib/Transforms/Vectorize/LoopVectorize.cpp: `error: cannot decompose class type ‘std::pair<llvm::Value*, const llvm::SCEV*>’: ...`
and llvm/include/llvm/Transforms/IPO/Attributor.h: `error: duplicate initialization of ‘llvm::AnalysisGetter::HasLegacyWrapper<Analysis, std::void_t<typename Analysis::LegacyWrapper> >’`
I think some instances have been there for a couple of months, but shorter than one year.
6a684dbc4433a33e5f94fb15c9e378a2408021e0 <https://reviews.llvm.org/rG6a684dbc4433a33e5f94fb15c9e378a2408021e0> brings some new ones, e.g.
llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h: `error: invalid application of ‘sizeof’ to incomplete type ‘llvm::DwarfTypeUnit’`
We probably should just give up 7.1 and say that GCC<7.5 is unsupported.
I have verified that GCC 7.5 is able to build `check-{llvm,clang,clang-tools,lldb,lld,polly,mlir,bolt}`,
but not flang due to at least `flang/Common/enum-class.h` and a `<charconv`> in a unittest.
This patch is intended to be cherry picked into the release/17.x branch.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D156286
Files:
llvm/cmake/modules/CheckCompilerVersion.cmake
llvm/docs/GettingStarted.rst
Index: llvm/docs/GettingStarted.rst
===================================================================
--- llvm/docs/GettingStarted.rst
+++ llvm/docs/GettingStarted.rst
@@ -281,7 +281,6 @@
Package Version Notes
=========================================================== ============ ==========================================
`CMake <http://cmake.org/>`__ >=3.20.0 Makefile/workspace generator
-`GCC <http://gcc.gnu.org/>`_ >=7.1.0 C/C++ compiler\ :sup:`1`
`python <http://www.python.org/>`_ >=3.6 Automated test suite\ :sup:`2`
`zlib <http://zlib.net>`_ >=1.2.3.4 Compression library\ :sup:`3`
`GNU Make <http://savannah.gnu.org/projects/make>`_ 3.79, 3.79.1 Makefile/build processor\ :sup:`4`
@@ -343,7 +342,7 @@
* Clang 5.0
* Apple Clang 10.0
-* GCC 7.1
+* GCC 7.5
* Visual Studio 2019 16.7
Anything older than these toolchains *may* work, but will require forcing the
@@ -409,11 +408,11 @@
.. _github gist:
https://gist.github.com/application2000/73fd6f4bf1be6600a2cf9f56315a2d91
-Easy steps for installing GCC 7.1.0:
+Easy steps for installing a specific version of GCC:
.. code-block:: console
- % gcc_version=7.1.0
+ % gcc_version=7.5.0
% wget https://ftp.gnu.org/gnu/gcc/gcc-${gcc_version}/gcc-${gcc_version}.tar.bz2
% wget https://ftp.gnu.org/gnu/gcc/gcc-${gcc_version}/gcc-${gcc_version}.tar.bz2.sig
% wget https://ftp.gnu.org/gnu/gnu-keyring.gpg
Index: llvm/cmake/modules/CheckCompilerVersion.cmake
===================================================================
--- llvm/cmake/modules/CheckCompilerVersion.cmake
+++ llvm/cmake/modules/CheckCompilerVersion.cmake
@@ -4,8 +4,8 @@
include(CheckCXXSourceCompiles)
-set(GCC_MIN 7.1)
-set(GCC_SOFT_ERROR 7.1)
+set(GCC_MIN 7.5)
+set(GCC_SOFT_ERROR 7.5)
set(CLANG_MIN 5.0)
set(CLANG_SOFT_ERROR 5.0)
set(APPLECLANG_MIN 10.0)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D156286.544185.patch
Type: text/x-patch
Size: 2032 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230726/c8702d77/attachment.bin>
More information about the llvm-commits
mailing list