aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDylan Baker <dylan@pnwbakers.com>2017-11-28 17:34:48 -0800
committerDylan Baker <dylan@pnwbakers.com>2017-11-28 17:34:48 -0800
commit549e5928fbc8195f881fbef91708f6126f032ae9 (patch)
tree581b5cc8f994ba6832d2c9c6508ccfd9c9977414
parentf260a422165ed4471a5c7660c9501b7bdb98437a (diff)
downloadmeson-549e5928fbc8195f881fbef91708f6126f032ae9.zip
meson-549e5928fbc8195f881fbef91708f6126f032ae9.tar.gz
meson-549e5928fbc8195f881fbef91708f6126f032ae9.tar.bz2
docs: Add better documentation of the LLVM dependency
-rw-r--r--docs/markdown/Dependencies.md29
1 files changed, 29 insertions, 0 deletions
diff --git a/docs/markdown/Dependencies.md b/docs/markdown/Dependencies.md
index dbd21aa..bae3edc 100644
--- a/docs/markdown/Dependencies.md
+++ b/docs/markdown/Dependencies.md
@@ -197,3 +197,32 @@ tools support. You can force one or another via the method keyword:
```meson
wmf_dep = dependency('wmf', method : 'config-tool')
```
+
+## LLVM
+
+Meson has native support for LLVM going back to version LLVM version 3.5.
+It supports a few additional features compared to other config-tool based
+dependencies.
+
+As of 0.44.0 Meson supports the `static` keyword argument for LLVM. Before this
+LLVM >= 3.9 would always dynamically link, while older versions would
+statically link, due to a quirk in `llvm-config`.
+
+### Modules, a.k.a. Components
+
+Meson wraps LLVM's concept of components in it's own modules concept.
+When you need specific components you add them as modules as meson will do the
+right thing:
+
+```meson
+llvm_dep = dependency('llvm', version : '>= 4.0', modules : ['amdgpu'])
+```
+
+As of 0.44.0 it can also take optional modules (these will affect the arguments
+generated for a static link):
+
+```meson
+llvm_dep = dependency(
+ 'llvm', version : '>= 4.0', modules : ['amdgpu'], optional_modules : ['inteljitevents'],
+)
+```