| build_hotdoc = false | |
| if meson.is_cross_build() | |
| if get_option('doc').enabled() | |
| error('Documentation enabled but building the doc while cross building is not supported yet.') | |
| endif | |
| message('Documentation not built as building it while cross building is not supported yet.') | |
| subdir_done() | |
| endif | |
| if static_build | |
| if get_option('doc').enabled() | |
| error('Documentation enabled but not supported when building statically.') | |
| endif | |
| message('Building statically, can\'t build the documentation') | |
| subdir_done() | |
| endif | |
| if not build_gir | |
| if get_option('doc').enabled() | |
| error('Documentation enabled but introspection not built.') | |
| endif | |
| message('Introspection not built, won\'t build documentation requiring it') | |
| subdir_done() | |
| endif | |
| hotdoc_p = find_program('hotdoc', required: get_option('doc')) | |
| if not hotdoc_p.found() | |
| message('Hotdoc not found, not building the documentation') | |
| subdir_done() | |
| endif | |
| required_hotdoc_extensions = ['gi-extension'] | |
| hotdoc = import('hotdoc') | |
| foreach extension: required_hotdoc_extensions | |
| if not hotdoc.has_extensions(extension) | |
| if get_option('doc').enabled() | |
| error('Documentation enabled but @0@ missing'.format(extension)) | |
| endif | |
| message('@0@ extension not found, not building documentation'.format(extension)) | |
| subdir_done() | |
| endif | |
| endforeach | |
| excludes = ['gettext.h', | |
| 'gst-validate-internal.h', | |
| 'gst-validate-i18n-lib.c' | |
| ] | |
| build_hotdoc = true | |
| validate_excludes = [] | |
| foreach f: excludes | |
| validate_excludes += [join_paths(meson.current_source_dir(), '..', | |
| 'validate', 'gst', 'validate', f)] | |
| endforeach | |
| validate_sources = gstvalidate_headers + gstvalidate_sources | |
| hotdoc = import('hotdoc') | |
| plugins_doc = [] | |
| libs_doc = [hotdoc.generate_doc('gst-devtools', | |
| project_version: apiversion, | |
| sitemap: 'sitemap.txt', | |
| index: 'index.md', | |
| gi_c_sources: validate_sources, | |
| gi_c_source_filters: validate_excludes, | |
| gi_index: 'gi-index.md', | |
| gi_smart_index: true, | |
| gi_sources: [validate_gir[0].full_path()], | |
| disable_incremental_build: true, | |
| dependencies : [validate_dep], | |
| depends: validate_gir[0], | |
| )] |