summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMathieu Duponchelle <mathieu@centricular.com>2020-06-21 01:32:29 +0200
committerThibault Saunier <tsaunier@igalia.com>2020-06-23 12:10:17 -0400
commit44fe121613557d65cd8970d57799855375343f29 (patch)
treeacf63c99d98dee10f5661483ccb8c71da6766cf7
parentda1f6ac0a78e06f88395231fcca52d1fbfd59381 (diff)
docs: generate documentation for libgstopencv
-rw-r--r--docs/libs/opencv/index.md7
-rw-r--r--docs/libs/opencv/sitemap.txt1
-rw-r--r--docs/meson.build14
-rw-r--r--gst-libs/gst/opencv/meson.build2
4 files changed, 21 insertions, 3 deletions
diff --git a/docs/libs/opencv/index.md b/docs/libs/opencv/index.md
new file mode 100644
index 000000000..552662b32
--- /dev/null
+++ b/docs/libs/opencv/index.md
@@ -0,0 +1,7 @@
+# Opencv Library
+
+This library should be linked to by getting cflags and libs from
+gstreamer-plugins-bad-{{ gst_api_version.md }}.pc and adding
+-lgstopencv-{{ gst_api_version.md }} to the library flags.
+
+> NOTE: This library API is considered *unstable*
diff --git a/docs/libs/opencv/sitemap.txt b/docs/libs/opencv/sitemap.txt
new file mode 100644
index 000000000..e3577f116
--- /dev/null
+++ b/docs/libs/opencv/sitemap.txt
@@ -0,0 +1 @@
+c-index
diff --git a/docs/meson.build b/docs/meson.build
index 94023d511..35a86d0a2 100644
--- a/docs/meson.build
+++ b/docs/meson.build
@@ -111,6 +111,7 @@ if build_gir
{'name': 'player', 'gir': player_gir, 'lib': gstplayer_dep},
{'name': 'insertbin', 'gir': insertbin_gir, 'lib': gstinsertbin_dep},
{'name': 'codecparsers', 'lib': gstcodecparsers_dep},
+ {'name': 'opencv', 'lib': gstopencv_dep, 'c_source_patterns': ['*.h', '*.cpp'], 'extra_c_flags': ['-x c++']},
{'name': 'adaptivedemux', 'lib': gstadaptivedemux_dep},
{'name': 'webrtc', 'gir': webrtc_gir, 'lib': gstwebrtc_dep, 'suffix': 'lib'},
{'name': 'audio', 'gir': audio_gir, 'lib': gstbadaudio_dep, 'prefix': 'bad-'},
@@ -125,6 +126,13 @@ libs_doc = []
foreach lib_def: libs
name = lib_def['name']
lib = lib_def['lib']
+
+ c_source_patterns = lib_def.get('c_source_patterns', ['*.[hc]'])
+ c_sources = []
+ foreach pattern: c_source_patterns
+ c_sources += join_paths(root_rel, 'gst-libs/gst', name, pattern)
+ endforeach
+
if lib_def.has_key('gir')
if has_gi_extension
gir = lib_def['gir']
@@ -132,7 +140,7 @@ foreach lib_def: libs
suffix = lib_def.get('suffix', '')
libs_doc += [hotdoc.generate_doc(prefix + name + suffix,
project_version: api_version,
- gi_c_sources: [join_paths(root_rel, 'gst-libs/gst', name, '*.[hc]')],
+ gi_c_sources: c_sources,
gi_sources: gir[0].full_path(),
gi_c_source_filters: excludes,
sitemap: join_paths('libs', name, 'sitemap.txt'),
@@ -151,12 +159,12 @@ foreach lib_def: libs
sitemap: join_paths('libs', name, 'sitemap.txt'),
index: join_paths('libs', name, 'index.md'),
project_version: api_version,
- c_sources: [join_paths(root_rel, 'gst-libs/gst/', name, '*.[hc]')],
+ c_sources: c_sources,
c_source_filters: excludes,
c_index: join_paths('libs', name, 'index.md'),
c_smart_index: true,
c_order_generated_subpages: true,
- extra_c_flags: ' -DGST_USE_UNSTABLE_API',
+ extra_c_flags: ['-DGST_USE_UNSTABLE_API'] + lib_def.get('extra_c_flags', []),
dependencies: lib,
install: false,
)]
diff --git a/gst-libs/gst/opencv/meson.build b/gst-libs/gst/opencv/meson.build
index f659d5778..80b0531aa 100644
--- a/gst-libs/gst/opencv/meson.build
+++ b/gst-libs/gst/opencv/meson.build
@@ -33,4 +33,6 @@ if opencv_dep.found()
install_headers(opencv_headers, subdir : 'gstreamer-1.0/gst/opencv')
elif get_option('opencv').enabled()
error('OpenCV support enabled but required dependencies were not found.')
+else
+ gstopencv_dep = disabler()
endif