• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1if build_machine.system() == 'windows'
2  message('Skipping gtk-doc while building on Windows')
3  subdir_done()
4endif
5
6if not find_program('gtkdoc-scan', required: get_option('docs')).found()
7  message('Not building documentation as gtk-doc was not found')
8  subdir_done()
9endif
10
11conf.set('HAVE_GTK_DOC', 1)
12
13gnome = import('gnome')
14
15docconf = configuration_data()
16docconf.set('HB_VERSION', meson.project_version())
17
18version_xml = configure_file(input: 'version.xml.in',
19  output: 'version.xml',
20  configuration: docconf)
21
22content_files = [
23  'usermanual-what-is-harfbuzz.xml',
24  'usermanual-install-harfbuzz.xml',
25  'usermanual-getting-started.xml',
26  'usermanual-glyph-information.xml',
27  'usermanual-shaping-concepts.xml',
28  'usermanual-object-model.xml',
29  'usermanual-buffers-language-script-and-direction.xml',
30  'usermanual-fonts-and-faces.xml',
31  'usermanual-opentype-features.xml',
32  'usermanual-clusters.xml',
33  'usermanual-utilities.xml',
34  'usermanual-integration.xml',
35  version_xml,
36]
37
38html_images = [
39  'HarfBuzz.png',
40  'HarfBuzz.svg',
41]
42
43ignore_headers = [
44  'hb-gobject.h',
45  'hb-gobject-enums.h',
46  'hb-gobject-enums-tmp.h',
47  'hb-gobject-structs.h',
48]
49
50gnome.gtkdoc('harfbuzz',
51  main_sgml: 'harfbuzz-docs.xml',
52  src_dir: [join_paths(meson.current_source_dir(), '../src'),
53            join_paths(meson.current_build_dir(), '../src'),
54           ],
55  scan_args: ['--deprecated-guards=HB_DISABLE_DEPRECATED',
56              '--ignore-decorators=HB_EXTERN|HB_DEPRECATED',
57             ],
58  mkdb_args: ['--source-suffixes=h,cc',
59              '--xml-mode',
60              '--output-format=xml',
61             ],
62  content_files: content_files,
63  html_assets: html_images,
64  ignore_headers: ignore_headers,
65  dependencies: [libharfbuzz_dep],
66  install: true)
67