1if get_option('gtk_doc')
2  subdir('xml')
3
4  ignore_headers = [
5    'tests',
6    'gatomicarray.h',
7    'gobject_probes.h',
8    'gobject_trace.h',
9    'gtype-private.h',
10    'glib-enumtypes.h',
11  ]
12
13  docpath = join_paths(glib_datadir, 'gtk-doc', 'html')
14  version_conf = configuration_data()
15  version_conf.set('GLIB_VERSION', meson.project_version())
16  configure_file(
17    input: 'version.xml.in',
18    output: 'version.xml',
19    configuration: version_conf
20  )
21
22  gtkdocincl = include_directories('.')
23
24  gnome.gtkdoc('gobject',
25    main_xml : 'gobject-docs.xml',
26    namespace : 'g',
27    mode : 'none',
28    dependencies : [libgobject_dep, libglib_dep],
29    include_directories : [gtkdocincl],
30    src_dir : 'gobject',
31    scan_args : gtkdoc_common_scan_args + [
32      '--rebuild-types',
33      '--ignore-headers=' + ' '.join(ignore_headers),
34    ],
35    content_files : [
36      'glib-mkenums.xml',
37      'glib-genmarshal.xml',
38      'gobject-query.xml',
39      'tut_gobject.xml',
40      'tut_gsignal.xml',
41      'tut_gtype.xml',
42      'tut_howto.xml',
43      'tut_intro.xml',
44      'tut_tools.xml'
45    ],
46    html_assets : [
47      'images/glue.png'
48    ],
49    fixxref_args: [
50      '--html-dir=' + docpath,
51      '--extra-dir=' + join_paths('gobject', '..', 'glib', 'html'),
52    ],
53    install: true,
54    check: true,
55  )
56endif
57
58if get_option('man')
59  manpages = ['glib-mkenums', 'glib-genmarshal', 'gobject-query']
60  foreach page : manpages
61    custom_target(page + '-man',
62      input: page + '.xml',
63      output: page + '.1',
64      command: xsltproc_command,
65      install: true,
66      install_dir: man1_dir)
67  endforeach
68endif
69