mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-30 17:36:16 +01:00
e1744603d8
The GIO reference documentation links to that documentation, so we cannot only build it when the installed tests are enabled.
236 lines
5.9 KiB
Meson
236 lines
5.9 KiB
Meson
if get_option('gtk_doc')
|
|
subdir('gdbus-object-manager-example')
|
|
subdir('xml')
|
|
|
|
ignore_headers = [
|
|
'fam',
|
|
'fen',
|
|
'gdbus-2.0',
|
|
'gvdb',
|
|
'inotify',
|
|
'kqueue',
|
|
'libasyncns',
|
|
'tests',
|
|
'win32',
|
|
'xdgmime',
|
|
'gappinfoprivate.h',
|
|
'gapplicationimpl.h',
|
|
'gasynchelper.h',
|
|
'gcontenttypeprivate.h',
|
|
'gcontextspecificgroup.h',
|
|
'gcredentialsprivate.h',
|
|
'gdbus-daemon-generated.h',
|
|
'gdbusactiongroup-private.h',
|
|
'gdbusauth.h',
|
|
'gdbusauthmechanismanon.h',
|
|
'gdbusauthmechanismexternal.h',
|
|
'gdbusauthmechanism.h',
|
|
'gdbusauthmechanismsha1.h',
|
|
'gdbusdaemon.h',
|
|
'gdbusprivate.h',
|
|
'gdelayedsettingsbackend.h',
|
|
'gdocumentportal.h',
|
|
'gdummyfile.h',
|
|
'gdummyproxyresolver.h',
|
|
'gdummytlsbackend.h',
|
|
'gfileattribute-priv.h',
|
|
'gfileinfo-priv.h',
|
|
'ghttpproxy.h',
|
|
'giomodule-priv.h',
|
|
'gioprivate.h',
|
|
'giowin32-priv.h',
|
|
'gio_probes.h',
|
|
'gio_trace.h',
|
|
'gio-tool.h',
|
|
'glocaldirectorymonitor.h',
|
|
'glocalfileenumerator.h',
|
|
'glocalfile.h',
|
|
'glocalfileinfo.h',
|
|
'glocalfileinputstream.h',
|
|
'glocalfileiostream.h',
|
|
'glocalfilemonitor.h',
|
|
'glocalfileoutputstream.h',
|
|
'glocalvfs.h',
|
|
'gmemorymonitordbus.h',
|
|
'gmemorymonitorportal.h',
|
|
'gmountprivate.h',
|
|
'gnativevolumemonitor.h',
|
|
'gnetworkingprivate.h',
|
|
'gnetworkmonitorbase.h',
|
|
'gnetworkmonitornetlink.h',
|
|
'gnetworkmonitornm.h',
|
|
'gnetworkmonitorportal.h',
|
|
'gnotificationbackend.h',
|
|
'gnotification-private.h',
|
|
'gopenuriportal.h',
|
|
'gpollfilemonitor.h',
|
|
'gportalsupport.h',
|
|
'gproxyresolverportal.h',
|
|
'gregistrysettingsbackend.h',
|
|
'gresourcefile.h',
|
|
'gsettingsbackendinternal.h',
|
|
'gsettings-mapping.h',
|
|
'gsettingsschema-internal.h',
|
|
'gsocketinputstream.h',
|
|
'gsocketoutputstream.h',
|
|
'gsocks4aproxy.h',
|
|
'gsocks4proxy.h',
|
|
'gsocks5proxy.h',
|
|
'gsubprocesslauncher-private.h',
|
|
'gthreadedresolver.h',
|
|
'gtrashportal.h',
|
|
'gunionvolumemonitor.h',
|
|
'gunixmount.h',
|
|
'gunixresolver.h',
|
|
'gunixvolume.h',
|
|
'gunixvolumemonitor.h',
|
|
'gwin32networkmonitor.h',
|
|
'gwin32appinfo.h',
|
|
'gwin32mount.h',
|
|
'gwin32resolver.h',
|
|
'gwin32volumemonitor.h',
|
|
'thumbnail-verify.h',
|
|
'xdp-dbus.h',
|
|
]
|
|
|
|
sections_files = files('gio-sections-common.txt')
|
|
|
|
if host_system == 'windows'
|
|
ignore_headers += [
|
|
'gfiledescriptorbased.h',
|
|
'gunixconnection.h',
|
|
'gunixcredentialsmessage.h',
|
|
'gunixmounts.h',
|
|
'gunixfdlist.h',
|
|
'gunixfdmessage.h',
|
|
'gunixinputstream.h',
|
|
'gunixoutputstream.h',
|
|
'gunixsocketaddress.h',
|
|
'gdesktopappinfo.h',
|
|
'gosxappinfo.h',
|
|
]
|
|
sections_files += files('gio-sections-win32.txt')
|
|
platform_file = files('gio-docs-win32.xml')
|
|
else
|
|
if glib_have_cocoa
|
|
ignore_headers += ['gdesktopappinfo.h']
|
|
else
|
|
ignore_headers += ['gosxappinfo.h']
|
|
endif
|
|
|
|
ignore_headers += [
|
|
'gwin32inputstream.h',
|
|
'gwin32outputstream.h',
|
|
'gwin32registrykey.h',
|
|
]
|
|
platform_file = files('gio-docs-unix.xml')
|
|
endif
|
|
|
|
ignore_sources = [
|
|
'kqueue',
|
|
'tests',
|
|
'gdbus-daemon-generated.c',
|
|
'xdp-dbus.c',
|
|
]
|
|
|
|
docpath = join_paths(glib_datadir, 'gtk-doc', 'html')
|
|
version_conf = configuration_data()
|
|
version_conf.set('VERSION', meson.project_version())
|
|
configure_file(
|
|
input: 'version.xml.in',
|
|
output: 'version.xml',
|
|
configuration: version_conf
|
|
)
|
|
|
|
# FIXME: configure_file() does not support more than one file in input
|
|
# argument. If input argument is omitted then meson checks that all items in
|
|
# the command array are strings. But if we have an input then extra files
|
|
# can be passed in command array.
|
|
# See https://github.com/mesonbuild/meson/issues/5893
|
|
concat_files_helper = find_program('concat-files-helper.py')
|
|
configure_file(
|
|
output : 'gio-sections.txt',
|
|
input : sections_files[0],
|
|
command : [concat_files_helper, '@OUTPUT@'] + sections_files,
|
|
)
|
|
|
|
configure_file(
|
|
output : 'gio-docs-platform.xml',
|
|
input : platform_file,
|
|
copy : true,
|
|
)
|
|
|
|
content_files = [
|
|
'overview.xml',
|
|
'migrating-posix.xml',
|
|
'migrating-gnome-vfs.xml',
|
|
'migrating-gconf.xml',
|
|
'migrating-gdbus.xml',
|
|
'gio-querymodules.xml',
|
|
'glib-compile-schemas.xml',
|
|
'glib-compile-resources.xml',
|
|
'gapplication.xml',
|
|
'gsettings.xml',
|
|
'gresource.xml',
|
|
'gdbus.xml',
|
|
'gdbus-codegen.xml',
|
|
]
|
|
|
|
content_files += [
|
|
gdbus_example_objectmanager_xml,
|
|
gdbus_example_objectmanager_sources,
|
|
gdbus_object_manager_example_doc
|
|
]
|
|
|
|
gnome.gtkdoc('gio',
|
|
main_xml : 'gio-docs.xml',
|
|
namespace : 'g',
|
|
mode : 'none',
|
|
dependencies : [libgio_dep, libgobject_dep, libglib_dep],
|
|
src_dir : 'gio',
|
|
scan_args : gtkdoc_common_scan_args + [
|
|
'--rebuild-types',
|
|
'--ignore-headers=' + ' '.join(ignore_headers),
|
|
],
|
|
mkdb_args : [
|
|
'--ignore-files=' + ' '.join(ignore_sources),
|
|
],
|
|
content_files : content_files,
|
|
expand_content_files : [
|
|
'overview.xml',
|
|
'migrating-posix.xml',
|
|
'migrating-gnome-vfs.xml',
|
|
'migrating-gconf.xml',
|
|
'migrating-gdbus.xml',
|
|
'gdbus-codegen.xml',
|
|
],
|
|
html_assets : [
|
|
'gvfs-overview.png',
|
|
'menu-example.png',
|
|
'menu-model.png',
|
|
],
|
|
fixxref_args: [
|
|
'--html-dir=' + docpath,
|
|
'--extra-dir=' + join_paths('gio', '..', 'glib', 'html'),
|
|
'--extra-dir=' + join_paths('gio', '..', 'gobject', 'html'),
|
|
],
|
|
install: true,
|
|
check: true,
|
|
)
|
|
endif
|
|
|
|
|
|
if get_option('man')
|
|
manpages = ['gapplication', 'gio-querymodules', 'glib-compile-schemas',
|
|
'glib-compile-resources', 'gsettings', 'gresource', 'gdbus',
|
|
'gio', 'gdbus-codegen']
|
|
foreach page : manpages
|
|
custom_target(page + '-man',
|
|
input: page + '.xml',
|
|
output: page + '.1',
|
|
command: xsltproc_command,
|
|
install: true,
|
|
install_dir: man1_dir)
|
|
endforeach
|
|
endif
|