[clang] [openmp] [docs] Prefer --gcc-install-dir= to deprecated GCC_INSTALL_PREFIX (PR #85458)
Fangrui Song via cfe-commits
cfe-commits at lists.llvm.org
Fri Mar 15 13:07:09 PDT 2024
https://github.com/MaskRay created https://github.com/llvm/llvm-project/pull/85458
Setting GCC_INSTALL_PREFIX leads to a warning (#77537).
Link: discourse.llvm.org/t/add-gcc-install-dir-deprecate-gcc-toolchain-and-remove-gcc-install-prefix/65091
Link: discourse.llvm.org/t/correct-cmake-parameters-for-building-clang-and-lld-for-riscv/72833
>From 3aae138c19fd123b1d2f401f553b7c37802271ee Mon Sep 17 00:00:00 2001
From: Fangrui Song <i at maskray.me>
Date: Fri, 15 Mar 2024 13:07:00 -0700
Subject: [PATCH] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20initia?=
=?UTF-8?q?l=20version?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Created using spr 1.3.5-bogner
---
clang/www/get_started.html | 17 ++++++++++-------
openmp/docs/SupportAndFAQ.rst | 7 ++++---
2 files changed, 14 insertions(+), 10 deletions(-)
diff --git a/clang/www/get_started.html b/clang/www/get_started.html
index dda914a46904e8..8e4d36640be735 100755
--- a/clang/www/get_started.html
+++ b/clang/www/get_started.html
@@ -86,13 +86,16 @@ <h3 id="buildNix">On Unix-like Systems</h3>
</ul>
</li>
- <li>If you intend to use Clang's C++ support, you may need to tell it how
- to find your C++ standard library headers. In general, Clang will detect
- the best version of libstdc++ headers available and use them - it will
- look both for system installations of libstdc++ as well as installations
- adjacent to Clang itself. If your configuration fits neither of these
- scenarios, you can use the <tt>-DGCC_INSTALL_PREFIX</tt> cmake option
- to tell Clang where the gcc containing the desired libstdc++ is installed.
+ <li>On Linux, you may need GCC runtime libraries (e.g. <tt>crtbeginS.o,
+ libstdc++.so</tt>) and libstdc++ headers. In general, Clang will detect
+ well-known GCC installation paths matching the target triple (configured at
+ build time (see <tt>clang --version</tt>); overriden by
+ <tt>--target=</tt>) and use the largest version. If your configuration fits
+ none of the standard scenarios, you can set <tt>--gcc-install-dir=</tt> to
+ the GCC installation directory (something like
+ <tt>/usr/lib/gcc/$triple/$major</tt>). If your GCC installation is under
+ <tt>/usr/lib/gcc</tt> but uses a different triple, you can set
+ <tt>--gcc-triple=$triple</tt>.
</li>
<li>Try it out (assuming you add llvm/build/bin to your path):
<ul>
diff --git a/openmp/docs/SupportAndFAQ.rst b/openmp/docs/SupportAndFAQ.rst
index afc532cd73eef4..9e6974dfbb13d2 100644
--- a/openmp/docs/SupportAndFAQ.rst
+++ b/openmp/docs/SupportAndFAQ.rst
@@ -279,11 +279,12 @@ Q: How to build an OpenMP offload capable compiler with an outdated host compile
Enabling the OpenMP runtime will perform a two-stage build for you.
If your host compiler is different from your system-wide compiler, you may need
-to set the CMake variable `GCC_INSTALL_PREFIX` so clang will be able to find the
-correct GCC toolchain in the second stage of the build.
+to set ``CMAKE_{C,CXX}_FLAGS`` like
+``--gcc-install-dir=/usr/lib/gcc/x86_64-linux-gnu/12`` so that clang will be
+able to find the correct GCC toolchain in the second stage of the build.
For example, if your system-wide GCC installation is too old to build LLVM and
-you would like to use a newer GCC, set the CMake variable `GCC_INSTALL_PREFIX`
+you would like to use a newer GCC, set ``--gcc-install-dir=``
to inform clang of the GCC installation you would like to use in the second stage.
Q: How can I include OpenMP offloading support in my CMake project?
More information about the cfe-commits
mailing list