soup: Fix pkgconfig generation and documentation
authorNirbheek Chauhan <nirbheek@centricular.com>
Wed, 2 Mar 2022 19:07:57 +0000 (00:37 +0530)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Thu, 3 Mar 2022 16:59:16 +0000 (16:59 +0000)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1805>

subprojects/gst-plugins-good/ext/soup/meson.build

index 897fcb0..793ef4d 100644 (file)
@@ -67,11 +67,20 @@ if default_library in ['static', 'both']
   )
 endif
 
-if default_library == 'static'
-  gstsouphttpsrc = gstsouphttpsrc_static
+# Use the static library to generate the .pc file if it's available. The shared
+# library .pc file does not have a Requires: on libsoup-2.4, and we use plugin
+# .pc files to generate dependencies for linking plugins statically.
+if default_library == 'shared'
+  pkgconfig.generate(gstsouphttpsrc_shared, install_dir : plugins_pkgconfig_install_dir)
 else
-  gstsouphttpsrc = gstsouphttpsrc_shared
+  pkgconfig.generate(gstsouphttpsrc_static, install_dir : plugins_pkgconfig_install_dir)
 endif
 
-pkgconfig.generate(gstsouphttpsrc, install_dir : plugins_pkgconfig_install_dir)
-plugins += [gstsouphttpsrc]
+# Add the shared library to the plugins list if available. We pass this list of
+# plugins to hotdoc to generate the plugins cache, which introspects the plugin
+# by loading it. We need the shared plugin for that.
+if default_library == 'static'
+  plugins += [gstsouphttpsrc_static]
+else
+  plugins += [gstsouphttpsrc_shared]
+endif