meson: add support for building the gtk-doc pages

v2:
 - track the version.xml dependency

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Link: https://github.com/kmod-project/kmod/pull/94
Signed-off-by: Lucas De Marchi <lucas.de.marchi@gmail.com>
This commit is contained in:
Emil Velikov 2024-09-02 23:20:18 +01:00 committed by Lucas De Marchi
parent 04477b7631
commit 59eadafbb3
4 changed files with 35 additions and 0 deletions

View File

@ -17,6 +17,7 @@ export GCC_COLORS
# meson bits
EXTRA_DIST += \
libkmod/docs/meson.build \
man/meson.build \
meson.build \
meson_options.txt \

22
libkmod/docs/meson.build Normal file
View File

@ -0,0 +1,22 @@
gnome = import('gnome')
version_file = configure_file(
input: 'version.xml.in',
output: 'version.xml',
configuration: cdata,
)
gnome.gtkdoc(
'libkmod',
content_files : version_file,
ignore_headers : [
'@0@/libkmod/libkmod-index.h'.format(meson.project_source_root()),
'@0@/libkmod/libkmod-internal-file.h'.format(meson.project_source_root()),
'@0@/libkmod/libkmod-internal.h'.format(meson.project_source_root()),
],
scan_args : '--ignore-decorators="KMOD_EXPORT"',
src_dir : '@0@/libkmod/'.format(meson.project_source_root()),
namespace : 'kmod',
module_version : '3',
main_xml : 'libkmod-docs.xml',
)

View File

@ -422,6 +422,10 @@ if get_option('manpages')
subdir('man')
endif
if get_option('docs')
subdir('libkmod/docs')
endif
summary({
'moduledir' : moduledir,
'prefix' : get_option('prefix'),
@ -438,6 +442,7 @@ summary({
'debug-messages' : get_option('debug-messages'),
'build-tests' : get_option('build-tests'),
'manpages' : get_option('manpages'),
'docs' : get_option('docs'),
}, section : 'Options')
summary({

View File

@ -85,3 +85,10 @@ option(
value : true,
description : 'Build the manpages. Default: true',
)
option(
'docs',
type : 'boolean',
value : false,
description : 'Build the documentation. Default: false',
)