summaryrefslogtreecommitdiff
path: root/docs/reference/gobject/meson.build
blob: 7a7f1b81d582e40a98c646f9f1e7d14937072726 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
if get_option('gtk_doc')
  subdir('xml')

  ignore_headers = [
    'tests',
    'gatomicarray.h',
    'gobject_probes.h',
    'gobject_trace.h',
    'gtype-private.h'
  ]

  ignore_decorators = [
    'GLIB_VAR',
    'G_GNUC_INTERNAL',
    'G_GNUC_WARN_UNUSED_RESULT',
    'GLIB_AVAILABLE_IN_ALL',
    'GLIB_AVAILABLE_IN_2_26',
    'GLIB_AVAILABLE_IN_2_28',
    'GLIB_AVAILABLE_IN_2_30',
    'GLIB_AVAILABLE_IN_2_32',
    'GLIB_AVAILABLE_IN_2_34',
    'GLIB_AVAILABLE_IN_2_36',
    'GLIB_AVAILABLE_IN_2_38',
    'GLIB_AVAILABLE_IN_2_40',
    'GLIB_AVAILABLE_IN_2_42',
    'GLIB_AVAILABLE_IN_2_44',
    'GLIB_AVAILABLE_IN_2_46',
    'GLIB_AVAILABLE_IN_2_48',
    'GLIB_AVAILABLE_IN_2_50',
    'GLIB_AVAILABLE_IN_2_52',
    'GLIB_AVAILABLE_IN_2_54',
    'GLIB_AVAILABLE_IN_2_56',
    'GLIB_DEPRECATED_IN_2_26',
    'GLIB_DEPRECATED_IN_2_26_FOR',
    'GLIB_DEPRECATED_IN_2_28',
    'GLIB_DEPRECATED_IN_2_28_FOR',
    'GLIB_DEPRECATED_IN_2_30',
    'GLIB_DEPRECATED_IN_2_30_FOR',
    'GLIB_DEPRECATED_IN_2_32',
    'GLIB_DEPRECATED_IN_2_32_FOR',
    'GLIB_DEPRECATED_IN_2_34',
    'GLIB_DEPRECATED_IN_2_34_FOR',
    'GLIB_DEPRECATED_IN_2_36',
    'GLIB_DEPRECATED_IN_2_36_FOR',
    'GLIB_DEPRECATED_IN_2_38',
    'GLIB_DEPRECATED_IN_2_38_FOR',
    'GLIB_DEPRECATED_IN_2_40',
    'GLIB_DEPRECATED_IN_2_40_FOR',
    'GLIB_DEPRECATED_IN_2_42',
    'GLIB_DEPRECATED_IN_2_42_FOR',
    'GLIB_DEPRECATED_IN_2_44',
    'GLIB_DEPRECATED_IN_2_44_FOR',
    'GLIB_DEPRECATED_IN_2_46',
    'GLIB_DEPRECATED_IN_2_46_FOR',
    'GLIB_DEPRECATED_IN_2_48',
    'GLIB_DEPRECATED_IN_2_48_FOR',
    'GLIB_DEPRECATED_IN_2_50',
    'GLIB_DEPRECATED_IN_2_50_FOR',
    'GLIB_DEPRECATED_IN_2_52',
    'GLIB_DEPRECATED_IN_2_52_FOR',
    'GLIB_DEPRECATED_IN_2_54',
    'GLIB_DEPRECATED_IN_2_54_FOR',
    'GLIB_DEPRECATED_IN_2_56',
    'GLIB_DEPRECATED_IN_2_56_FOR',
  ]

  docpath = join_paths(glib_datadir, 'gtk-doc', 'html')
  version_conf = configuration_data()
  version_conf.set('GLIB_VERSION', meson.project_version())
  configure_file(
    input: 'version.xml.in',
    output: 'version.xml',
    configuration: version_conf
  )

  gtkdocincl = include_directories('.')

  gnome.gtkdoc('gobject',
    main_xml : 'gobject-docs.xml',
    namespace : 'g',
    mode : 'none',
    dependencies : [libgobject_dep, libglib_dep],
    include_directories : [gtkdocincl],
    src_dir : 'gobject',
    scan_args : [
      '--rebuild-types',
      '--deprecated-guards=G_DISABLE_DEPRECATED',
      '--ignore-decorators=' + '|'.join(ignore_decorators),
      '--ignore-headers=' + ' '.join(ignore_headers),
    ],
    content_files : [
      'glib-mkenums.xml',
      'glib-genmarshal.xml',
      'gobject-query.xml',
      'tut_gobject.xml',
      'tut_gsignal.xml',
      'tut_gtype.xml',
      'tut_howto.xml',
      'tut_intro.xml',
      'tut_tools.xml'
    ],
    html_assets : [
      'images/glue.png'
    ],
    fixxref_args: [
      '--html-dir=' + docpath,
      '--extra-dir=' + join_paths('gobject', '..', 'glib', 'html'),
    ],
    install: true
  )
endif

if get_option('man')
  manpages = ['glib-mkenums', 'glib-genmarshal', 'gobject-query']
  foreach page : manpages
    custom_target(page + '-man',
      input: page + '.xml',
      output: page + '.1',
      command: xsltproc_command,
      install: true,
      install_dir: man1_dir)
  endforeach
endif