aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <vid512@gmail.com>2024-09-05 22:28:25 +0200
committerDylan Baker <dylan@pnwbakers.com>2024-09-21 08:17:41 -0700
commit527752a58874cd82f87f3122efae9300dabe173f (patch)
treecd1b851f1b2f1e6aeb38a35ffb4916280352dfd8
parent59f6105f7980a7e615df8b2c7700a40d707415a3 (diff)
downloadmeson-527752a58874cd82f87f3122efae9300dabe173f.zip
meson-527752a58874cd82f87f3122efae9300dabe173f.tar.gz
meson-527752a58874cd82f87f3122efae9300dabe173f.tar.bz2
add description
-rw-r--r--docs/markdown/Dependencies.md28
1 files changed, 28 insertions, 0 deletions
diff --git a/docs/markdown/Dependencies.md b/docs/markdown/Dependencies.md
index 3c3df1b..93f75d5 100644
--- a/docs/markdown/Dependencies.md
+++ b/docs/markdown/Dependencies.md
@@ -849,6 +849,34 @@ version.
*New in 0.54.0* the `system` method.
+## DIA SDK
+
+*(added 1.6.0)*
+
+Microsoft's Debug Interface Access SDK (DIA SDK) is available only on Windows,
+when using msvc, clang-cl or clang compiler from Microsoft Visual Studio.
+
+The DIA SDK runtime is not statically linked to target. The default usage
+method requires the runtime DLL (msdiaXXX.dll) to be manually registered in the
+OS with `regsrv32.exe` command, so it can be loaded using `CoCreateInstance`
+Windows function.
+
+Alternatively, you can use meson to copy the DIA runtime DLL to your build
+directory, and load it dynamically using `NoRegCoCreate` function provided by
+the DIA SDK. To facilitate this, you can read DLL path from dependency's
+variable 'dll' and use fs module to copy it. Example:
+
+```meson
+dia = dependency('diasdk', required: true)
+fs = import('fs')
+fs.copyfile(dia.get_variable('dll'))
+
+conf = configuration_data()
+conf.set('msdia_dll_name', fs.name(dia_dll_name))
+```
+
+Only the major version is available (eg. version is `14` for msdia140.dll).
+
<hr>
<a name="footnote1">1</a>: They may appear to be case-insensitive, if the
underlying file system happens to be case-insensitive.