Read-only mirrors. Development, issues and pull requests are on GitHub.

summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorMartin Hořeňovský2022-09-03 22:31:25 +0200
committerMartin Hořeňovský2022-09-03 22:31:29 +0200
commit4adf0105490a9a8f14fba0f6d463a16bcafa61bd (patch)
treea1e425e3018f7b92f5bd8cc1c48204c7c290390e
parent686468d18551792bb06915c86685bcf2f358295a (diff)
downloadcatch3-4adf0105490a9a8f14fba0f6d463a16bcafa61bd.tar.gz
Mention dynamic library stuff in the FAQ
Closes #2497
-rw-r--r--docs/faq.md11
1 files changed, 11 insertions, 0 deletions
diff --git a/docs/faq.md b/docs/faq.md
index 81d8be68..c589cff4 100644
--- a/docs/faq.md
+++ b/docs/faq.md
@@ -8,6 +8,7 @@
[What is Catch2's ABI stability policy?](#what-is-catch2s-abi-stability-policy)<br>
[What is Catch2's API stability policy?](#what-is-catch2s-api-stability-policy)<br>
[Does Catch2 support running tests in parallel?](#does-catch2-support-running-tests-in-parallel)<br>
+[Can I compile Catch2 into a dynamic library?](#can-i-compile-catch2-into-a-dynamic-library)<br>
## How do I run global setup/teardown only if tests will be run?
@@ -58,6 +59,16 @@ runners easier. [See the relevant section in our page on best
practices](usage-tips.md#parallel-tests).
+## Can I compile Catch2 into a dynamic library?
+
+Yes, Catch2 supports the [standard CMake `BUILD_SHARED_LIBS`
+option](https://cmake.org/cmake/help/latest/variable/BUILD_SHARED_LIBS.html).
+However, the dynamic library support is provided as-is. Catch2 does not
+provide API export annotations, and so you can only use it as a dynamic
+library on platforms that default to public visibility, or with tooling
+support to force export Catch2's API.
+
+
---
[Home](Readme.md#top)