diff --git a/FAQ/README.md b/FAQ/README.md
index f20b7cb5d3b..829e85b9b82 100644
--- a/FAQ/README.md
+++ b/FAQ/README.md
@@ -2140,8 +2140,9 @@ For macOS Sierra (10.12), there seems to be additional problems with GDB
that might make it unusable, see the [GDB bug
report](https://sourceware.org/bugzilla/show_bug.cgi?id=20266).
-GDB does not support local macOS application debugging on Apple silicon
-(AArch64) at present. It is necessary to use the LLDB debugger instead.
+> [!NOTE]
+> GDB does not support local macOS application debugging on Apple silicon
+> (AArch64) at present. It is necessary to use the LLDB debugger instead.
#### How do I get the LLDB debugger?
@@ -2209,7 +2210,7 @@ with
#### How do I install the LLDB debugger integration?
-1. Go to Help \> Install new Software
+1. Go to Help > Install new Software
2. Select the CDT update site (9.1 or greater)
3. Under **CDT Optional Features**, select **C/C++ LLDB Debugger
Integration**
@@ -2359,8 +2360,8 @@ setvbuf(stderr, NULL, _IONBF, 0);
CDT does not come with a compiler, so if you do not have one you will
need to install one. Follows are options available to you:
-- macOS: Install Xcode from the App Store or from Apple Developer web
-site.
+- macOS: Install the _Xcode Command Line Tools_ from the App Store or
+from Apple Developer web site.
- Linux: If not already installed, it should be available in your
distribution's package system on your installation CDs.
diff --git a/build/org.eclipse.cdt.managedbuilder.gnu.ui/plugin.properties b/build/org.eclipse.cdt.managedbuilder.gnu.ui/plugin.properties
index 7a12df92941..35e83637a2c 100644
--- a/build/org.eclipse.cdt.managedbuilder.gnu.ui/plugin.properties
+++ b/build/org.eclipse.cdt.managedbuilder.gnu.ui/plugin.properties
@@ -28,9 +28,9 @@ TargetName.gnu.lib=Gnu Static Library
TargetName.cygw.exe=Cygwin Executable
TargetName.cygw.so=Cygwin DLL
TargetName.cygw.lib=Cygwin Library
-TargetName.macosx.exe=MacOS X Executable
-TargetName.macosx.so=MacOS X Shared Library
-TargetName.macosx.lib=MacOS X Static Library
+TargetName.macosx.exe=macOS Executable
+TargetName.macosx.so=macOS Shared Library
+TargetName.macosx.lib=macOS Static Library
TargetName.solaris.exe=Solaris Gnu Executable
TargetName.solaris.so=Solaris Gnu Shared Library
TargetName.solaris.lib=Solaris Gnu Static Library
@@ -57,7 +57,7 @@ ToolChainName.Dbg=GCC Tool Chain
ToolChainName.Linux=Linux GCC
ToolChainName.Cygwin=Cygwin GCC
ToolChainName.MinGW=MinGW GCC
-ToolChainName.Macosx=MacOSX GCC
+ToolChainName.Macosx=macOS GCC
ToolChainName.Solaris=Solaris GCC
# Generic platform names
@@ -96,8 +96,8 @@ ToolName.linker.mingw.gnu.c=MinGW C Linker
ToolName.linker.mingw.gnu.cpp=MinGW C++ Linker
# Mach-O tool names
-ToolName.linker.macosx.c = MacOS X C Linker
-ToolName.linker.macosx.cpp = MacOS X C++ Linker
+ToolName.linker.macosx.c = macOS C Linker
+ToolName.linker.macosx.cpp = macOS C++ Linker
#Solaris tool names
ToolName.compiler.solaris.c = Solaris C Compiler
diff --git a/doc/org.eclipse.cdt.doc.user/build.properties b/doc/org.eclipse.cdt.doc.user/build.properties
index a654ba75c60..aee29b82fa8 100644
--- a/doc/org.eclipse.cdt.doc.user/build.properties
+++ b/doc/org.eclipse.cdt.doc.user/build.properties
@@ -32,7 +32,6 @@ bin.includes = about.html,\
reference/,\
tasks/,\
toc.xml,\
- toc_LLVM.xml,\
topics_Concepts.xml,\
topics_Getting_Started.xml,\
topics_Reference.xml,\
diff --git a/doc/org.eclipse.cdt.doc.user/plugin.xml b/doc/org.eclipse.cdt.doc.user/plugin.xml
index 3e9227402d8..dc5d78ea802 100644
--- a/doc/org.eclipse.cdt.doc.user/plugin.xml
+++ b/doc/org.eclipse.cdt.doc.user/plugin.xml
@@ -14,10 +14,6 @@
file="toc.xml"
primary="true">
-
-
diff --git a/doc/org.eclipse.cdt.doc.user/setting_up_eclipse_cdt/src/eclipse.xml b/doc/org.eclipse.cdt.doc.user/setting_up_eclipse_cdt/src/eclipse.xml
index 281d7bf6a56..57fc21d0031 100644
--- a/doc/org.eclipse.cdt.doc.user/setting_up_eclipse_cdt/src/eclipse.xml
+++ b/doc/org.eclipse.cdt.doc.user/setting_up_eclipse_cdt/src/eclipse.xml
@@ -246,7 +246,7 @@
For Linux, select "Linux GCC"
- For Mac OS X, select "MacOSX GCC"
+ For macOS, select "macOS GCC"Do not use "Cross GCC"! Unfortunately this option may be
diff --git a/doc/org.eclipse.cdt.doc.user/src/getting_started/index_mbs.adoc b/doc/org.eclipse.cdt.doc.user/src/getting_started/index_mbs.adoc
index ca73a3abba0..88e3180216b 100644
--- a/doc/org.eclipse.cdt.doc.user/src/getting_started/index_mbs.adoc
+++ b/doc/org.eclipse.cdt.doc.user/src/getting_started/index_mbs.adoc
@@ -43,3 +43,5 @@ xref:cdt_w_build.adoc[Building a project]
xref:cdt_w_debug.adoc[Debugging a project]
xref:cdt_w_existing_code.adoc[Importing your C/{cpp} source files into Eclipse]
+
+xref:../llvm/user_manual.adoc[LLVM with Clang/GCC for Eclipse CDT]
diff --git a/doc/org.eclipse.cdt.doc.user/src/llvm/general.adoc b/doc/org.eclipse.cdt.doc.user/src/llvm/general.adoc
index 667d2bef7b9..2b51ed1bfa9 100644
--- a/doc/org.eclipse.cdt.doc.user/src/llvm/general.adoc
+++ b/doc/org.eclipse.cdt.doc.user/src/llvm/general.adoc
@@ -30,15 +30,15 @@ endif::[]
== General information
-LLVM with Clang/GCC for Eclipse CDT plug-in provides LLVM toolchain with
-Clang or llvm-gcc compiler to compile C/(cpp} programs.
+The LLVM with Clang/GCC for Eclipse CDT plug-in integrates an LLVM toolchain using
+the Clang or llvm-gcc compiler with the CDT managed build system to compile C/(cpp} programs.
-http://www.llvm.org[LLVM] is a rather modern toolchain that supports the
+http://www.llvm.org[LLVM] is a modern toolchain that supports the
compilation of C/(cpp} code (among others) to LLVM virtual machine's
_bitcode_, which in turn can be compiled to each platform's native
binary.
-The plug-in includes the following tools from the LLVM toolchain:
+The plug-in integrates the following tools from the LLVM toolchain:
Clang/Clang{plus}{plus}/llvm-gcc/llvm-g{plus}{plus} (C/(cpp} compilers), llvm-ld (linker),
llvm-ar (archiver), llvm-as (assembler), llc (static compiler) and lli
(JIT/Interpreter).
diff --git a/doc/org.eclipse.cdt.doc.user/src/llvm/initial_configuration.adoc b/doc/org.eclipse.cdt.doc.user/src/llvm/initial_configuration.adoc
index 50ad9bece6e..25f2cc91c6b 100644
--- a/doc/org.eclipse.cdt.doc.user/src/llvm/initial_configuration.adoc
+++ b/doc/org.eclipse.cdt.doc.user/src/llvm/initial_configuration.adoc
@@ -30,24 +30,19 @@ endif::[]
== Initial configuration
-When you launch an Eclipse workspace with LLVM plug-in for the first
-time, you may need to set paths to LLVM binaries, headers and libraries.
-This is done in Eclipse by navigating to Window -> Preferences -> LLVM.
-Set LLVM installation folder to point where your LLVM binaries are,
-include directory to point where your Clang includes are and library
-path to the directory where your LLVM libraries reside.
+On Linux and macOS hosts, the LLVM toolchain will typically be installed via the package
+management tool provided by the Linux distribution or as part of the
+_Xcode Command Line Tools_ and will be located on the system `PATH`.
+If your LLVM toolchain is not on the system `PATH` when launching the Eclipse Workbench,
+you may need to add the location of your LLVM binaries to the `PATH` environment variable
+within Eclipse. This is done by navigating to Window -> Preferences ->
+C/{cpp} -> Build -> Environment. Select the `PATH` environment variable and then edit its
+value to point where your LLVM binaries are located.
-If your paths in Preferences and LLVM are correctly set and the plug-in
-is able to find your LLVM binaries, you should have the option to use
-"LLVM with Clang (Linux/MacOSX/Windows)" toolchain and "LLVM with GCC
-(Linux/MacOSX/Windows) toolchain". The toolchains are available in
-project types of 'executable', 'static library' and 'dynamic library' in
-both C and {cpp}.
+If your `PATH` environment variable is set correctly, you should see the
+_LLVM with Clang_ and _LLVM with GCC_ toolchains available for selection within the
+CDT project wizard for managed build projects. The toolchains are available for both
+C and {cpp} projects.
-An alternative way is to set the LLVM binary path to PATH system
-environment variable.
-
-You may also have to include the path to
-Standard {cpp} Library in order to compile {cpp} programs by adding the
-path in LLVM Preferences or appending it to LD_LIBRARY_PATH system
-environment variable.
+NOTE: Clang is automatically detected when installed on a Microsoft Windows host using
+the MSYS2 package manager. It is not necessary to modify the `PATH`.
diff --git a/doc/org.eclipse.cdt.doc.user/src/llvm/llvm_specific.adoc b/doc/org.eclipse.cdt.doc.user/src/llvm/llvm_specific.adoc
index 7c8b365e386..0d0463d6647 100644
--- a/doc/org.eclipse.cdt.doc.user/src/llvm/llvm_specific.adoc
+++ b/doc/org.eclipse.cdt.doc.user/src/llvm/llvm_specific.adoc
@@ -32,30 +32,26 @@ endif::[]
=== Project types
-==== [#executables]#Executables#
+==== Executables
-At the moment the executables built with the default settings of a LLVM
+The executables built with the default settings of an LLVM
with Clang project are native binaries and can be run and debugged as
-such. However LLVM does also support compiling programs to LLVM bitcode,
-which in turn can be run with lli, which is the LLVM toolchain's
-interpreter/JIT compiler. Unfortunately programs run with lli can not be
+such. However LLVM does also support building programs to LLVM bitcode,
+which in turn can be run with `lli`, which is the LLVM toolchain's
+interpreter/JIT compiler. Unfortunately programs run with `lli` can not be
efficiently debugged, since the only (usable) debugging information that
you can get from them is the backtrace. You can, however, compile the
-bitcode versions of your programs, if you will (TODO: even though
+bitcode versions of your programs, if you wish (TODO: even though
running them from Eclipse doesn't work at the moment).
-===== Compiling to LLVM bitcode instead of native binary
+===== Compiling to LLVM bitcode instead of object code
-You can compile your programs to LLVM bitcode instead of native binaries
-by unchecking the "Create native binary (-native)" checkbox in your
-project's properties in Properties → C/{cpp} Build → Settings → LLVM
-Linker → General LLVM options. After this Eclipse will not give the
--native flag to llvm-ld, so the product of linking is just linked
-bitcode files (.bc) and a Bash script file with the name of the wanted
-executable. The Bash script will simply run the compiled LLVM bitcode
-file with lli.
+C/{cpp} source files are compiled to native object code by default. You can compile
+your source files to LLVM bitcode instead of object code by checking the _Emit LLVM IR_
+checkbox in the Project Properties dialog on the Properties -> C/{cpp} Build ->
+Settings -> LLVM Clang -> Optimization page.
-==== [#libraries]#Shared and static libraries#
+==== Shared and static libraries
The shared and static libraries generated with LLVM plugin are (TODO:
for now) only LLVM bitcode files linked into one file and therefore
diff --git a/doc/org.eclipse.cdt.doc.user/toc_LLVM.xml b/doc/org.eclipse.cdt.doc.user/toc_LLVM.xml
deleted file mode 100644
index 67d31d1b220..00000000000
--- a/doc/org.eclipse.cdt.doc.user/toc_LLVM.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
-
-
-
-
diff --git a/doc/org.eclipse.cdt.doc.user/topics_Getting_Started.xml b/doc/org.eclipse.cdt.doc.user/topics_Getting_Started.xml
index 23a117ae3fc..c26bd1a0e3b 100644
--- a/doc/org.eclipse.cdt.doc.user/topics_Getting_Started.xml
+++ b/doc/org.eclipse.cdt.doc.user/topics_Getting_Started.xml
@@ -20,5 +20,11 @@
+
+
+
+
+
+
diff --git a/llvm/org.eclipse.cdt.managedbuilder.llvm.ui/plugin.properties b/llvm/org.eclipse.cdt.managedbuilder.llvm.ui/plugin.properties
index 14430668fd7..ea6f784d0b2 100644
--- a/llvm/org.eclipse.cdt.managedbuilder.llvm.ui/plugin.properties
+++ b/llvm/org.eclipse.cdt.managedbuilder.llvm.ui/plugin.properties
@@ -1,5 +1,5 @@
###############################################################################
-# Copyright (c) 2010 Nokia Siemens Networks Oyj, Finland.
+# Copyright (c) 2010, 2025 Nokia Siemens Networks Oyj and others
#
# This program and the accompanying materials
# are made available under the terms of the Eclipse Public License 2.0
@@ -9,7 +9,8 @@
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
-# Nokia Siemens Networks Oyj, initial LLVM support as an add-on to CDT.
+# Nokia Siemens Networks Oyj, initial LLVM support as an add-on to CDT
+# John Dallaway, add option for clang '-emit-llvm' (#1277)
###############################################################################
# plugin names
@@ -25,20 +26,20 @@ ToolChainName.llvm=LLVM
ToolChainName.llvm.with.linker=LLVM with C/C++ Linker
ToolChainName.llvm.with.static.compiler=LLVM with static compiler
ToolChainName.llvm.static.compiler.linux=LLVM with static compiler (Linux)
-ToolChainName.llvm.static.compiler.macosx=LLVM with static compiler (MacOSX)
+ToolChainName.llvm.static.compiler.macosx=LLVM with static compiler (macOS)
ToolChainName.llvm.static.compiler.win32=LLVM with static compiler (Windows)
ToolChainName.llvm.jit=LLVM with JIT/Interpreter
ToolChainName.llvm.jit.linux=LLVM with JIT/Interpreter (Linux)
-ToolChainName.llvm.jit.macosx=LLVM with JIT/Interpreter (MacOSX)
+ToolChainName.llvm.jit.macosx=LLVM with JIT/Interpreter (macOS)
ToolChainName.llvm.jit.win32=LLVM with JIT/Interpreter (Windows)
ToolChainName.llvm.clang=LLVM with Clang
ToolChainName.llvm.clang.win32.mingw=LLVM with Clang (Windows) (MinGW)\u0020
ToolChainName.llvm.clang.win32.cygwin=LLVM with Clang (Windows) (Cygwin)
ToolChainName.llvm.linux=LLVM with Clang (Linux)
-ToolChainName.llvm.macosx=LLVM with Clang (MacOSX)
+ToolChainName.llvm.macosx=LLVM with Clang (macOS)
ToolChainName.llvm.gnu=LLVM with GCC
ToolChainName.llvm.gnu.linux=LLVM with GCC (Linux)
-ToolChainName.llvm.gnu.macosx=LLVM with GCC (MacOSX)
+ToolChainName.llvm.gnu.macosx=LLVM with GCC (macOS)
ToolChainName.llvm.gnu.win32.cygwin=LLVM with GCC (Windows) (Cygwin)
ToolChainName.llvm.gnu.win32.mingw=LLVM with GCC (Windows) (MinGW)
diff --git a/llvm/org.eclipse.cdt.managedbuilder.llvm.ui/plugin.xml b/llvm/org.eclipse.cdt.managedbuilder.llvm.ui/plugin.xml
index 8a58bb8e1f6..f57096a7029 100644
--- a/llvm/org.eclipse.cdt.managedbuilder.llvm.ui/plugin.xml
+++ b/llvm/org.eclipse.cdt.managedbuilder.llvm.ui/plugin.xml
@@ -851,7 +851,7 @@ Contributors: