From e2e6daf362c357b685e485e38b17e8a8c865b000 Mon Sep 17 00:00:00 2001
From: Nirbheek Chauhan <nirbheek@centricular.com>
Date: Tue, 4 Mar 2025 15:01:24 +0530
Subject: [PATCH] meson: Replace disabler dependencies with not-found
 dependencies

If a plugin gets disabled due to a `disabler()` dependency, the plugin
docs build itself will get disabled because `all_plugins_paths` will
become a disabler.

This was actually happening with opencv on systems that don't have
opencv available, and could happen with libsoup too if the build files
change in the future.

Let's avoid wasting hours of debugging for people. A not-found
dependency has the same effect.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8582>
---
 subprojects/gst-plugins-bad/ext/opencv/meson.build          | 2 +-
 subprojects/gst-plugins-bad/gst-libs/gst/opencv/meson.build | 4 ++--
 subprojects/gst-plugins-good/ext/meson.build                | 4 ++--
 3 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/subprojects/gst-plugins-bad/ext/opencv/meson.build b/subprojects/gst-plugins-bad/ext/opencv/meson.build
index 1b3be9db2a..c351274ab7 100644
--- a/subprojects/gst-plugins-bad/ext/opencv/meson.build
+++ b/subprojects/gst-plugins-bad/ext/opencv/meson.build
@@ -66,7 +66,7 @@ plugin_sources += {
   'opencv': pathsep.join(doc_sources)
 }
 
-if get_option('opencv').disabled() or not opencv_dep.found()
+if get_option('opencv').disabled() or not opencv_dep.found() or not gstopencv_dep.found()
   subdir_done()
 endif
 
diff --git a/subprojects/gst-plugins-bad/gst-libs/gst/opencv/meson.build b/subprojects/gst-plugins-bad/gst-libs/gst/opencv/meson.build
index 0f2e2fc066..64e913e5a5 100644
--- a/subprojects/gst-plugins-bad/gst-libs/gst/opencv/meson.build
+++ b/subprojects/gst-plugins-bad/gst-libs/gst/opencv/meson.build
@@ -1,5 +1,5 @@
-opencv_dep = disabler()
-gstopencv_dep = disabler()
+opencv_dep = dependency('', required: false)
+gstopencv_dep = dependency('', required: false)
 opencv_opt = get_option('opencv')
 if opencv_opt.disabled()
   subdir_done()
diff --git a/subprojects/gst-plugins-good/ext/meson.build b/subprojects/gst-plugins-good/ext/meson.build
index 95044a264c..ecd3ea67f9 100644
--- a/subprojects/gst-plugins-good/ext/meson.build
+++ b/subprojects/gst-plugins-good/ext/meson.build
@@ -11,8 +11,8 @@
 # In cases 3,4: we create one static_library() target that links to libsoup
 # In cases 2,4: we create one shared_library() target that dlopen()s libsoup
 
-libsoup2_dep = disabler()
-libsoup3_dep = disabler()
+libsoup2_dep = dependency('', required: false)
+libsoup3_dep = dependency('', required: false)
 soup_ver_opt = get_option('soup-version')
 
 default_library = get_option('default_library')