aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorDudemanguy <random342@airmail.cc>2023-02-23 10:00:21 -0600
committerEli Schwartz <eschwartz93@gmail.com>2024-12-29 21:59:09 -0500
commitf070670e77fe36ece1a89ce00c13419de354b9ce (patch)
tree20256c4562979a3cca94b79cd5dd96e4d260ac28 /docs
parenta00467268549bce29e07cb435033b879ece939c3 (diff)
downloadmeson-f070670e77fe36ece1a89ce00c13419de354b9ce.zip
meson-f070670e77fe36ece1a89ce00c13419de354b9ce.tar.gz
meson-f070670e77fe36ece1a89ce00c13419de354b9ce.tar.bz2
dependencies: add custom atomic dependency
Almost exactly the same as how the dl dependency works. On certain systems (like BSDs that use clang), stdatomic is provided by compiler-rt and doesn't need a separate library explictly linked. On a typical GNU/LINUX system, atomic is a separate library that must be explictly found and linked against. So just add a builtin and system method for these two use cases.
Diffstat (limited to 'docs')
-rw-r--r--docs/markdown/Dependencies.md10
-rw-r--r--docs/markdown/snippets/atomic-dependency.md9
2 files changed, 19 insertions, 0 deletions
diff --git a/docs/markdown/Dependencies.md b/docs/markdown/Dependencies.md
index 93f75d5..2e255b2 100644
--- a/docs/markdown/Dependencies.md
+++ b/docs/markdown/Dependencies.md
@@ -317,6 +317,16 @@ dep = dependency('appleframeworks', modules : 'foundation')
These dependencies can never be found for non-OSX hosts.
+## atomic (stdatomic)
+
+*(added 1.7.0)*
+
+Provides access to the atomic operations library. This first attempts
+to look for a valid atomic external library before trying to fallback
+to what is provided by the C runtime libraries.
+
+`method` may be `auto`, `builtin` or `system`.
+
## Blocks
Enable support for Clang's blocks extension.
diff --git a/docs/markdown/snippets/atomic-dependency.md b/docs/markdown/snippets/atomic-dependency.md
new file mode 100644
index 0000000..2eef5e0
--- /dev/null
+++ b/docs/markdown/snippets/atomic-dependency.md
@@ -0,0 +1,9 @@
+## New custom dependency for atomic
+
+```
+dependency('atomic')
+```
+
+checks for the availability of the atomic operation library. First, it looks
+for the atomic library. If that is not found, then it will try to use what is
+provided by the libc.