meson: Check cairo-png dependency
authorSeungha Yang <seungha@centricular.com>
Fri, 23 Oct 2020 13:40:41 +0000 (22:40 +0900)
committerSeungha Yang <seungha@centricular.com>
Tue, 10 Nov 2020 14:32:50 +0000 (23:32 +0900)
Should check whether libpng dependent methods are available or not

Fixes: https://gitlab.freedesktop.org/gstreamer/gst-build/-/issues/128
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-devtools/-/merge_requests/225>

validate/gst-libs/gst/video/meson.build
validate/plugins/ssim/meson.build
validate/tools/meson.build

index f70594d..c4a84da 100644 (file)
@@ -1,4 +1,6 @@
-cairo_dep = dependency('cairo', required: false)
+validate_video_dep = dependency('', required: false)
+cairo_dep = dependency('cairo-png', required: false, fallback: 'cairo')
+
 if cairo_dep.found()
     video = static_library(
         'gstvalidatevideo',
@@ -7,4 +9,10 @@ if cairo_dep.found()
         dependencies : [gst_dep, gst_video_dep, gst_pbutils_dep, glib_dep, cairo_dep, gio_dep,
             mathlib],
     )
+    validate_video_dep = declare_dependency(
+        link_with : video,
+        include_directories : inc_dirs,
+        dependencies : [gst_dep, gst_video_dep, gst_pbutils_dep, glib_dep, cairo_dep, gio_dep,
+            mathlib],
+    )
 endif
index a6bf773..5562e41 100644 (file)
@@ -1,9 +1,9 @@
-if cairo_dep.found()
+if validate_video_dep.found()
     shared_library('gstvalidatessim',
                 'gstvalidatessim.c',
                 include_directories : inc_dirs,
-                link_with: [video, gstvalidate],
-                dependencies : [gst_dep, gst_video_dep, glib_dep, cairo_dep,
+                link_with: [gstvalidate],
+                dependencies : [gst_dep, gst_video_dep, glib_dep, validate_video_dep,
                     gst_pbutils_dep],
                 install : true,
                 install_dir : validate_plugins_install_dir,
index 0777253..b647793 100644 (file)
@@ -44,14 +44,13 @@ if rtsp_server_dep.found()
     )
 endif
 
-if cairo_dep.found()
+if validate_video_dep.found()
     executable('gst-validate-images-check-' + apiversion,
                'gst-validate-images-check.c',
                 install: true,
                 include_directories : inc_dirs,
-                dependencies : validate_dep,
-                c_args : [gst_c_args],
-                link_with: [video],
+                dependencies : [validate_dep, validate_video_dep],
+                c_args : [gst_c_args]
             )
 endif