aboutsummaryrefslogtreecommitdiff
path: root/docs/markdown/snippets
diff options
context:
space:
mode:
authorMartin Hostettler <textshell@uchuujin.de>2018-02-18 17:55:19 +0100
committerJussi Pakkanen <jpakkane@gmail.com>2018-04-14 23:43:29 +0300
commit3f7c6cf3d6a204e9665faad3c05bb5049f08ac74 (patch)
tree70ac29c3483fe52c470033e6f593a7d9f2b29b07 /docs/markdown/snippets
parent7c37ca15f38dce30eeef6cd8bc53f25406f9029e (diff)
downloadmeson-3f7c6cf3d6a204e9665faad3c05bb5049f08ac74.zip
meson-3f7c6cf3d6a204e9665faad3c05bb5049f08ac74.tar.gz
meson-3f7c6cf3d6a204e9665faad3c05bb5049f08ac74.tar.bz2
Improve generation of pkg-config files for static only libraries.
Previously pkg-config files generated by the pkgconfig modules for static libraries with dependencies could only be used in a dependencies with `static: true`. This was caused by the dependencies only appearing in Libs.private even if they are needed in the default linking mode. But a user of a dependency should not have to know if the default linking mode is static or dynamic; A dependency('somelib') call should always pull in all needed pieces into the build. Now for meson build static libraries passed via `libraries` to the generate method automatically promote dependencies to public.
Diffstat (limited to 'docs/markdown/snippets')
-rw-r--r--docs/markdown/snippets/pkg-config-fix-static-only.md12
1 files changed, 12 insertions, 0 deletions
diff --git a/docs/markdown/snippets/pkg-config-fix-static-only.md b/docs/markdown/snippets/pkg-config-fix-static-only.md
new file mode 100644
index 0000000..31cd389
--- /dev/null
+++ b/docs/markdown/snippets/pkg-config-fix-static-only.md
@@ -0,0 +1,12 @@
+## Improved generation of pkg-config files for static only libraries.
+
+Previously pkg-config files generated by the pkgconfig modules for static libraries
+with dependencies could only be used in a dependencies with `static: true`.
+
+Now the generated file contains the needed dependencies libraries directly within
+`Requires` and `Libs` for build static libraries passed via the `libraries` keyword
+argument.
+
+Projects that install both a static and a shared version of a library should use
+the result of `both_libraries` to the pkg config file generator or use
+configure_file for more complicated setups.