[clang-tools-extra] r369917 - [clangd] Add docs for configuration knobs in clangd

Kadir Cetinkaya via cfe-commits cfe-commits at lists.llvm.org
Mon Aug 26 08:42:16 PDT 2019


Author: kadircet
Date: Mon Aug 26 08:42:16 2019
New Revision: 369917

URL: http://llvm.org/viewvc/llvm-project?rev=369917&view=rev
Log:
[clangd] Add docs for configuration knobs in clangd

Summary:
This is a first step in documenting different configuration knobs we
have in clangd.

Reviewers: sammccall

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D66740

Added:
    clang-tools-extra/trunk/docs/clangd/Configuration.rst
Modified:
    clang-tools-extra/trunk/docs/clangd/index.rst

Added: clang-tools-extra/trunk/docs/clangd/Configuration.rst
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/docs/clangd/Configuration.rst?rev=369917&view=auto
==============================================================================
--- clang-tools-extra/trunk/docs/clangd/Configuration.rst (added)
+++ clang-tools-extra/trunk/docs/clangd/Configuration.rst Mon Aug 26 08:42:16 2019
@@ -0,0 +1,39 @@
+========
+Configuration
+========
+
+.. contents::
+
+.. role:: raw-html(raw)
+   :format: html
+
+Clangd has a bunch of command-line options that can change its behaviour in
+certain situations. This page aims to define those configuration knobs.
+
+Those command line arguments needs to be specified in an editor-specific way.
+You can find some editor specific instructions in `here <https://clang.llvm.org/extra/clangd/Installation.html#id3>`__.
+
+--query-driver
+==============
+
+Clangd makes use of clang behind the scenes, so it might fail to detect your
+standard library or built-in headers if your project is making use of a custom
+toolchain. That is quite common in hardware-related projects, especially for the
+ones making use of gcc (e.g. ARM's `arm-none-eabi-gcc`).
+
+You can specify your driver as a list of globs or full paths, then clangd will
+execute drivers and fetch necessary include paths to compile your code.
+
+For example if you have your compilers at:
+ - `/path/to/my-custom/toolchain1/arm-none-eabi-gcc`,
+ - `/path/to/my-custom/toolchain2/arm-none-eabi-g++`,
+ - `/path/to/my-custom2/toolchain/arm-none-eabi-g++`,
+you can provide clangd with
+`--query-driver=/path/to/my-custom/**/arm-none-eabi*` to enable execution of
+any binary that has a name starting with `arm-none-eabi` and under
+`/path/to/my-custom/`. This won't allow execution of the last compiler.
+
+Full list of flags
+==================
+
+You can find out about the rest of the flags using `clangd --help`.

Modified: clang-tools-extra/trunk/docs/clangd/index.rst
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/docs/clangd/index.rst?rev=369917&r1=369916&r2=369917&view=diff
==============================================================================
--- clang-tools-extra/trunk/docs/clangd/index.rst (original)
+++ clang-tools-extra/trunk/docs/clangd/index.rst Mon Aug 26 08:42:16 2019
@@ -7,6 +7,7 @@ clangd
 
    Installation
    Features
+   Configuration
 
 What is clangd?
 ===============




More information about the cfe-commits mailing list