mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-29 08:56:15 +01:00
548ec9f186
The `gi-docgen` tool is not designed to be used like that. In particular, when nesting documentation directories, the generated `*.devhelp2` files (needed by Devhelp to show the documentation) are nested one directory level too deep for Devhelp to find them, and hence are useless, and the documentation doesn’t show up in this common documentation viewer. So, change the installed documentation directory hierarchy: * `${PREFIX}/share/doc/glib-2.0/gio` → `${PREFIX}/share/doc/gio-2.0` * `${PREFIX}/share/doc/glib-2.0/glib-unix` → `${PREFIX}/share/doc/glib-unix-2.0` * `${PREFIX}/share/doc/glib-2.0/gobject` → `${PREFIX}/share/doc/gobject-2.0` * etc. * `${PREFIX}/share/doc/glib-2.0/glib` → `${PREFIX}/share/doc/glib-2.0` This is going to seem like pointless churn (the contents of the documentation have not changed), and packagers may mourn the split of content in `/usr/share/doc` from `/usr/share/doc/${package_name}` to `/usr/share/doc/${pkg_config_id}` instead, but that seems to be the best approach to fix this issue in GLib. gi-docgen’s behaviour does feel fairly consistent and correct with the rest of how it works (single output directory). Signed-off-by: Philip Withnall <pwithnall@gnome.org> Fixes: #3287
57 lines
1.4 KiB
Meson
57 lines
1.4 KiB
Meson
if get_option('man-pages').enabled()
|
|
manpages = [
|
|
'gi-compile-repository',
|
|
'gi-decompile-typelib',
|
|
'gi-inspect-typelib',
|
|
]
|
|
foreach page : manpages
|
|
custom_target(page + '-man',
|
|
input: page + '.rst',
|
|
output: page + '.1',
|
|
command: [
|
|
rst2man,
|
|
rst2man_flags,
|
|
'@INPUT@',
|
|
],
|
|
capture: true,
|
|
install: true,
|
|
install_dir: man1_dir,
|
|
install_tag: 'doc',
|
|
)
|
|
endforeach
|
|
endif
|
|
|
|
if get_option('documentation') and enable_gir
|
|
expand_content_files = [
|
|
'migrating-gi.md',
|
|
]
|
|
|
|
girepository_toml = configure_file(
|
|
input: 'girepository.toml.in',
|
|
output: 'girepository.toml',
|
|
configuration: toml_conf,
|
|
)
|
|
|
|
custom_target('girepository-docs',
|
|
input: [ girepository_toml, girepository_gir[0] ],
|
|
output: 'girepository-2.0',
|
|
command: [
|
|
gidocgen,
|
|
'generate',
|
|
gidocgen_common_args,
|
|
'--config=@INPUT0@',
|
|
'--output-dir=@OUTPUT@',
|
|
'--content-dir=@0@'.format(meson.current_source_dir()),
|
|
'--add-include-path=@0@'.format(meson.current_build_dir() / '../../../gobject'),
|
|
'--add-include-path=@0@'.format(meson.current_build_dir() / '../../../gmodule'),
|
|
'--add-include-path=@0@'.format(meson.current_build_dir() / '../../../gio'),
|
|
'@INPUT1@',
|
|
],
|
|
build_by_default: true,
|
|
depend_files: expand_content_files,
|
|
install: true,
|
|
install_dir: docs_dir,
|
|
install_tag: 'doc',
|
|
)
|
|
endif
|