<dt><code>LLVM</code></dt>
<dd><p>Meson includes upstream logic to wrap llvm-config using its standard
-dependency interface. It will search <code>$PATH</code> (or <code>%PATH%</code> on windows) for
-llvm-config (and llvm-config$version and llvm-config-$version), so using an
-LLVM from a non-standard path is as easy as
-<code>PATH=/path/with/llvm-config:$PATH meson build</code>.
+dependency interface.
</p></dd>
+
+<dd><p>
+As of meson 0.49.0 meson also has the concept of a
+<a href="https://mesonbuild.com/Native-environments.html">"native file"</a>,
+these files provide information about the native build environment (as opposed
+to a cross build environment). They are ini formatted and can override where to
+find llvm-config:
+
+custom-llvm.ini
+<pre>
+ [binaries]
+ llvm-config = '/usr/local/bin/llvm/llvm-config'
+</pre>
+
+Then configure meson:
+
+<pre>
+ meson builddir/ --native-file custom-llvm.ini
+</pre>
+</p></dd>
+
+<dd><p>
+For selecting llvm-config for cross compiling a
+<a href="https://mesonbuild.com/Cross-compilation.html#defining-the-environment">"cross file"</a>
+should be used. It uses the same format as the native file above:
+
+cross-llvm.ini
+<pre>
+ [binaries]
+ ...
+ llvm-config = '/usr/lib/llvm-config-32'
+</pre>
+
+Then configure meson:
+
+<pre>
+ meson builddir/ --cross-file cross-llvm.ini
+</pre>
+
+See the <a href="#cross-compilation">Cross Compilation</a> section for more information.
+</dd></p>
+
+<dd><p>
+For older versions of meson <code>$PATH</code> (or <code>%PATH%</code> on
+windows) will be searched for llvm-config (and llvm-config$version and
+llvm-config-$version), you can override this environment variable to control
+the search: <code>PATH=/path/with/llvm-config:$PATH meson build</code>.
+</dd></p>
</dl>
<dl>