Lines Matching +full:gobject +full:- +full:introspection
4 … command: [find_program('gen-hb-version.py'), meson.project_version(), '@OUTPUT@', '@INPUT@'],
5 input: 'hb-version.h.in',
6 output: 'hb-version.h',
10 # Base and default-included sources and headers
12 'hb-aat-layout-ankr-table.hh',
13 'hb-aat-layout-bsln-table.hh',
14 'hb-aat-layout-common.hh',
15 'hb-aat-layout-feat-table.hh',
16 'hb-aat-layout-just-table.hh',
17 'hb-aat-layout-kerx-table.hh',
18 'hb-aat-layout-morx-table.hh',
19 'hb-aat-layout-opbd-table.hh',
20 'hb-aat-layout-trak-table.hh',
21 'hb-aat-layout.cc',
22 'hb-aat-layout.hh',
23 'hb-aat-ltag-table.hh',
24 'hb-aat-map.cc',
25 'hb-aat-map.hh',
26 'hb-algs.hh',
27 'hb-array.hh',
28 'hb-atomic.hh',
29 'hb-bimap.hh',
30 'hb-bit-page.hh',
31 'hb-blob.cc',
32 'hb-blob.hh',
33 'hb-buffer-serialize.cc',
34 'hb-buffer-verify.cc',
35 'hb-buffer.cc',
36 'hb-buffer.hh',
37 'hb-cache.hh',
38 'hb-cff-interp-common.hh',
39 'hb-cff-interp-cs-common.hh',
40 'hb-cff-interp-dict-common.hh',
41 'hb-cff1-interp-cs.hh',
42 'hb-cff2-interp-cs.hh',
43 'hb-common.cc',
44 'hb-config.hh',
45 'hb-debug.hh',
46 'hb-dispatch.hh',
47 'hb-draw.cc',
48 'hb-draw.hh',
49 'hb-geometry.hh',
50 'hb-paint.cc',
51 'hb-paint.hh',
52 'hb-paint-extents.cc',
53 'hb-paint-extents.hh',
54 'hb-face.cc',
55 'hb-face.hh',
56 'hb-face-builder.cc',
57 'hb-fallback-shape.cc',
58 'hb-font.cc',
59 'hb-font.hh',
60 'hb-iter.hh',
61 'hb-kern.hh',
62 'hb-limits.hh',
63 'hb-machinery.hh',
64 'hb-map.cc',
65 'hb-map.hh',
66 'hb-meta.hh',
67 'hb-ms-feature-ranges.hh',
68 'hb-multimap.hh',
69 'hb-mutex.hh',
70 'hb-null.hh',
71 'hb-number.cc',
72 'hb-number.hh',
73 'hb-object.hh',
74 'hb-open-file.hh',
75 'hb-open-type.hh',
76 'hb-ot-cff-common.hh',
77 'hb-ot-cff1-std-str.hh',
78 'hb-ot-cff1-table.cc',
79 'hb-ot-cff1-table.hh',
80 'hb-ot-cff2-table.cc',
81 'hb-ot-cff2-table.hh',
82 'hb-ot-cmap-table.hh',
83 'hb-ot-color.cc',
84 'hb-ot-face-table-list.hh',
85 'hb-ot-face.cc',
86 'hb-ot-face.hh',
87 'hb-ot-font.cc',
88 'hb-ot-gasp-table.hh',
89 'hb-ot-glyf-table.hh',
90 'hb-ot-hdmx-table.hh',
91 'hb-ot-head-table.hh',
92 'hb-ot-hhea-table.hh',
93 'hb-ot-hmtx-table.hh',
94 'hb-ot-kern-table.hh',
95 'hb-ot-layout-base-table.hh',
96 'hb-ot-layout-common.hh',
97 'hb-ot-layout-gdef-table.hh',
98 'hb-ot-layout-gpos-table.hh',
99 'hb-ot-layout-gsub-table.hh',
100 'hb-outline.hh',
101 'hb-outline.cc',
108 'OT/glyf/glyf-helpers.hh',
110 'OT/glyf/path-builder.hh',
177 'OT/Var/VARC/coord-setter.hh',
180 'hb-ot-layout-gsubgpos.hh',
181 'hb-ot-layout-jstf-table.hh',
182 'hb-ot-layout.cc',
183 'hb-ot-layout.hh',
184 'hb-ot-map.cc',
185 'hb-ot-map.hh',
186 'hb-ot-math-table.hh',
187 'hb-ot-math.cc',
188 'hb-ot-maxp-table.hh',
189 'hb-ot-meta-table.hh',
190 'hb-ot-meta.cc',
191 'hb-ot-metrics.cc',
192 'hb-ot-metrics.hh',
193 'hb-ot-name-language-static.hh',
194 'hb-ot-name-language.hh',
195 'hb-ot-name-table.hh',
196 'hb-ot-name.cc',
197 'hb-ot-os2-table.hh',
198 'hb-ot-os2-unicode-ranges.hh',
199 'hb-ot-post-macroman.hh',
200 'hb-ot-post-table.hh',
201 'hb-ot-shaper-arabic-fallback.hh',
202 'hb-ot-shaper-arabic-joining-list.hh',
203 'hb-ot-shaper-arabic-pua.hh',
204 'hb-ot-shaper-arabic-table.hh',
205 'hb-ot-shaper-arabic-win1256.hh',
206 'hb-ot-shaper-arabic.cc',
207 'hb-ot-shaper-arabic.hh',
208 'hb-ot-shaper-default.cc',
209 'hb-ot-shaper-hangul.cc',
210 'hb-ot-shaper-hebrew.cc',
211 'hb-ot-shaper-indic-table.cc',
212 'hb-ot-shaper-indic.cc',
213 'hb-ot-shaper-indic.hh',
214 'hb-ot-shaper-khmer.cc',
215 'hb-ot-shaper-myanmar.cc',
216 'hb-ot-shaper-syllabic.cc',
217 'hb-ot-shaper-syllabic.hh',
218 'hb-ot-shaper-thai.cc',
219 'hb-ot-shaper-use-table.hh',
220 'hb-ot-shaper-use.cc',
221 'hb-ot-shaper-vowel-constraints.cc',
222 'hb-ot-shaper-vowel-constraints.hh',
223 'hb-ot-shaper.hh',
224 'hb-ot-shape-fallback.cc',
225 'hb-ot-shape-fallback.hh',
226 'hb-ot-shape-normalize.cc',
227 'hb-ot-shape-normalize.hh',
228 'hb-ot-shape.cc',
229 'hb-ot-shape.hh',
230 'hb-ot-stat-table.hh',
231 'hb-ot-tag-table.hh',
232 'hb-ot-tag.cc',
233 'hb-ot-var-avar-table.hh',
234 'hb-ot-var-common.hh',
235 'hb-ot-var-cvar-table.hh',
236 'hb-ot-var-fvar-table.hh',
237 'hb-ot-var-gvar-table.hh',
238 'hb-ot-var-hvar-table.hh',
239 'hb-ot-var-mvar-table.hh',
240 'hb-ot-var-varc-table.hh',
241 'hb-ot-var.cc',
242 'hb-ot-vorg-table.hh',
243 'hb-pool.hh',
244 'hb-sanitize.hh',
245 'hb-serialize.hh',
246 'hb-set-digest.hh',
247 'hb-set.cc',
248 'hb-set.hh',
249 'hb-shape-plan.cc',
250 'hb-shape-plan.hh',
251 'hb-shape.cc',
252 'hb-shaper-impl.hh',
253 'hb-shaper-list.hh',
254 'hb-shaper.cc',
255 'hb-shaper.hh',
256 'hb-static.cc',
257 'hb-string-array.hh',
258 'hb-style.cc',
259 'hb-ucd-table.hh',
260 'hb-ucd.cc',
261 'hb-unicode-emoji-table.hh',
262 'hb-unicode.cc',
263 'hb-unicode.hh',
264 'hb-utf.hh',
265 'hb-vector.hh',
270 'hb-buffer-deserialize-json.hh',
271 'hb-buffer-deserialize-text-glyphs.hh',
272 'hb-buffer-deserialize-text-unicode.hh',
273 'hb-number-parser.hh',
274 'hb-ot-shaper-indic-machine.hh',
275 'hb-ot-shaper-khmer-machine.hh',
276 'hb-ot-shaper-myanmar-machine.hh',
277 'hb-ot-shaper-use-machine.hh',
280 'hb-buffer-deserialize-json.rl',
281 'hb-buffer-deserialize-text-glyphs.rl',
282 'hb-buffer-deserialize-text-unicode.rl',
283 'hb-number-parser.rl',
284 'hb-ot-shaper-indic-machine.rl',
285 'hb-ot-shaper-khmer-machine.rl',
286 'hb-ot-shaper-myanmar-machine.rl',
287 'hb-ot-shaper-use-machine.rl',
291 'hb-aat-layout.h',
292 'hb-aat.h',
293 'hb-blob.h',
294 'hb-buffer.h',
295 'hb-common.h',
296 'hb-cplusplus.hh',
297 'hb-deprecated.h',
298 'hb-draw.h',
299 'hb-paint.h',
300 'hb-face.h',
301 'hb-font.h',
302 'hb-map.h',
303 'hb-ot-color.h',
304 'hb-ot-deprecated.h',
305 'hb-ot-font.h',
306 'hb-ot-layout.h',
307 'hb-ot-math.h',
308 'hb-ot-meta.h',
309 'hb-ot-metrics.h',
310 'hb-ot-name.h',
311 'hb-ot-shape.h',
312 'hb-ot-var.h',
313 'hb-ot.h',
314 'hb-set.h',
315 'hb-shape-plan.h',
316 'hb-shape.h',
317 'hb-style.h',
318 'hb-unicode.h',
325 hb_ft_sources = files('hb-ft.cc', 'hb-ft-colr.hh')
326 hb_ft_headers = files('hb-ft.h')
328 hb_glib_sources = files('hb-glib.cc')
329 hb_glib_headers = files('hb-glib.h')
331 hb_graphite2_sources = files('hb-graphite2.cc')
332 hb_graphite2_headers = files('hb-graphite2.h')
335 'hb-wasm-api.cc',
336 'hb-wasm-api.hh',
337 'hb-wasm-api-blob.hh',
338 'hb-wasm-api-buffer.hh',
339 'hb-wasm-api-common.hh',
340 'hb-wasm-api-face.hh',
341 'hb-wasm-api-font.hh',
342 'hb-wasm-api-shape.hh',
343 'hb-wasm-shape.cc',
347 # System-dependent sources and headers
349 hb_coretext_sources = files('hb-coretext-shape.cc', 'hb-coretext-font.cc')
350 hb_coretext_headers = files('hb-coretext.h')
352 hb_directwrite_sources = files('hb-directwrite.cc')
353 hb_directwrite_headers = files('hb-directwrite.h')
355 hb_gdi_sources = files('hb-gdi.cc')
356 hb_gdi_headers = files('hb-gdi.h')
358 hb_uniscribe_sources = files('hb-uniscribe.cc')
359 hb_uniscribe_headers = files('hb-uniscribe.h')
361 # Sources for libharfbuzz-gobject and libharfbuzz-icu
362 hb_icu_sources = files('hb-icu.cc')
363 hb_icu_headers = files('hb-icu.h')
365 # Sources for libharfbuzz-subset
367 'hb-number.cc',
368 'hb-number.hh',
369 'hb-ot-cff1-table.cc',
370 'hb-ot-cff2-table.cc',
371 'hb-static.cc',
372 'hb-subset-accelerator.hh',
373 'hb-subset-cff-common.cc',
374 'hb-subset-cff-common.hh',
375 'hb-subset-cff1.cc',
376 'hb-subset-cff2.cc',
377 'hb-subset-input.cc',
378 'hb-subset-input.hh',
379 'hb-subset-instancer-iup.hh',
380 'hb-subset-instancer-iup.cc',
381 'hb-subset-instancer-solver.hh',
382 'hb-subset-instancer-solver.cc',
383 'hb-subset-plan.cc',
384 'hb-subset-plan.hh',
385 'hb-subset-plan-member-list.hh',
386 'hb-subset-serialize.cc',
387 'graph/gsubgpos-context.cc',
388 'graph/gsubgpos-context.hh',
389 'graph/gsubgpos-graph.hh',
390 'graph/pairpos-graph.hh',
391 'graph/markbasepos-graph.hh',
392 'graph/coverage-graph.hh',
393 'graph/classdef-graph.hh',
394 'graph/split-helpers.hh',
395 'hb-subset.cc',
396 'hb-subset.hh',
400 'hb-subset.h',
401 'hb-subset-serialize.h'
405 'hb-gobject-structs.cc'
409 'hb-gobject.h',
410 'hb-gobject-structs.h',
424 ragel_helper = find_program('gen-ragel-artifacts.py')
442 command: [find_program('gen-harfbuzzcc.py'),
474 # GObject Introspection
505 # hb-directwrite needs a C++ linker
530 'GOBJECT',
546 hb_features_h = configure_file(input: 'hb-features.h.in',
547 output: 'hb-features.h',
552 # This file is generated to convince gtk-doc to generate documentation for all
555 hb_supported_features_h = configure_file(input: 'hb-features.h.in',
556 output: 'hb-supported-features.h',
561 # Base and default-included sources and headers
562 gen_def = find_program('gen-def.py')
565 gen_def_cmd += '--experimental-api'
580 extra_hb_cpp_args += '-DHB_DLL_EXPORT'
588 extra_hb_cpp_args += ['-DHB_CUSTOM_MALLOC']
589 hb_sources += 'failing-alloc.c'
590 hb_subset_sources += 'failing-alloc.c'
591 hb_icu_sources += 'failing-alloc.c'
592 hb_gobject_sources += 'failing-alloc.c'
614 # harfbuzz-subset
615 harfbuzz_subset_def = custom_target('harfbuzz-subset.def',
618 output: 'harfbuzz-subset.def')
621 libharfbuzz_subset = library('harfbuzz-subset', hb_subset_sources,
633 custom_target('harfbuzz-subset.cc',
635 output: 'harfbuzz-subset.cc',
637 command: [find_program('gen-harfbuzzcc.py'),
645 meson.override_dependency('harfbuzz-subset', libharfbuzz_subset_dep)
650 'hb-cairo.cc',
651 'hb-cairo-utils.cc',
652 'hb-static.cc'
656 'hb-cairo.h',
661 libharfbuzz_cairo = library('harfbuzz-cairo', hb_cairo_sources,
679 meson.override_dependency('harfbuzz-cairo', libharfbuzz_cairo_dep)
681 harfbuzz_cairo_def = custom_target('harfbuzz-cairo.def',
684 output: 'harfbuzz-cairo.def')
702 'test-basics': 'test.cc',
703 'test-buffer-serialize': 'test-buffer-serialize.cc',
704 'test-ot-meta': 'test-ot-meta.cc',
705 'test-ot-name': 'test-ot-name.cc',
706 'test-ot-glyphname': 'test-ot-glyphname.cc',
707 'test-ot-gpos-size-params': 'test-gpos-size-params.cc',
708 'test-ot-gsub-get-alternates': 'test-gsub-get-alternates.cc',
709 'test-ot-gsub-would-substitute': 'test-gsub-would-substitute.cc',
710 'test-use-table': 'test-use-table.cc',
715 cpp_args: cpp_args + ['-UNDEBUG'],
723 'test-algs': ['test-algs.cc', 'hb-static.cc'],
724 'test-array': ['test-array.cc'],
725 'test-bimap': ['test-bimap.cc', 'hb-static.cc'],
726 'test-cff': ['test-cff.cc', 'hb-static.cc'],
727 …'test-classdef-graph': ['graph/test-classdef-graph.cc', 'hb-static.cc', 'graph/gsubgpos-context.cc…
728 'test-iter': ['test-iter.cc', 'hb-static.cc'],
729 'test-machinery': ['test-machinery.cc', 'hb-static.cc'],
730 'test-map': ['test-map.cc', 'hb-static.cc'],
731 'test-multimap': ['test-multimap.cc', 'hb-static.cc'],
732 'test-number': ['test-number.cc', 'hb-number.cc'],
733 'test-ot-tag': ['hb-ot-tag.cc'],
734 'test-set': ['test-set.cc', 'hb-static.cc'],
735 'test-serialize': ['test-serialize.cc', 'hb-static.cc'],
736 'test-vector': ['test-vector.cc', 'hb-static.cc'],
737 'test-repacker': ['test-repacker.cc', 'hb-static.cc', 'graph/gsubgpos-context.cc'],
738 …'test-instancer-solver': ['test-subset-instancer-solver.cc', 'hb-subset-instancer-solver.cc', 'hb-…
739 'test-priority-queue': ['test-priority-queue.cc', 'hb-static.cc'],
740 …'test-tuple-varstore': ['test-tuple-varstore.cc', 'hb-subset-instancer-solver.cc', 'hb-subset-inst…
741 …'test-item-varstore': ['test-item-varstore.cc', 'hb-subset-instancer-solver.cc', 'hb-subset-instan…
742 'test-unicode-ranges': ['test-unicode-ranges.cc'],
745 if cpp.get_define('_MSC_FULL_VER') != '' and source.contains('hb-static.cc')
746 # TODO: Microsoft compilers cannot link tests using hb-static.cc, fix them
751 cpp_args: cpp_args + ['-DMAIN', '-UNDEBUG'],
773 harfbuzz_icu_def = custom_target('harfbuzz-icu.def',
776 output: 'harfbuzz-icu.def')
779 libharfbuzz_icu = library('harfbuzz-icu', [hb_icu_sources, hb_icu_headers],
796 meson.override_dependency('harfbuzz-icu', libharfbuzz_icu_dep)
896 configure_file(input: 'harfbuzz-config.cmake.in',
897 output: 'harfbuzz-config.cmake',
909 input: 'hb-gobject-enums.h.tmpl',
910 output: 'hb-gobject-enums-tmp.h.tmpl',
914 input: 'hb-gobject-enums.cc.tmpl',
915 output: 'hb-gobject-enums-tmp.cc.tmpl',
918 enums = gnome.mkenums('hb-gobject',
926 gobject_enums_c = custom_target('hb-gobject-enums.cc',
928 output: 'hb-gobject-enums.cc',
932 gobject_enums_h = custom_target('hb-gobject-enums.h',
934 output: 'hb-gobject-enums.h',
942 harfbuzz_gobject_def = custom_target('harfbuzz-gobject.def',
945 output: 'harfbuzz-gobject.def')
948 …libharfbuzz_gobject = library('harfbuzz-gobject', [hb_gobject_sources, gobject_enums_c, gobject_en…
960 gir = find_program('g-ir-scanner', required: get_option('introspection'))
961 build_gir = gir.found() and (not meson.is_cross_build() or get_option('introspection').enabled())
964 if not build_gir and get_option('introspection').enabled()
965 …error('Introspection support is requested but the default library option should be shared or both')
977 includes: ['GObject-2.0', 'freetype2-2.0'],
978 export_packages: ['harfbuzz-gobject', 'harfbuzz'],
979 header: 'hb-gobject.h',
981 extra_args: ['--cflags-begin',
982 '-DHB_NO_SINGLE_HEADER_ERROR',
983 '-DHAVE_GOBJECT',
984 '-DHB_EXTERN=',
985 '--cflags-end'])
993 meson.override_dependency('harfbuzz-gobject', libharfbuzz_gobject_dep)
996 description: 'HarfBuzz text shaping library GObject integration',
997 requires: ['harfbuzz = @0@'.format(meson.project_version()), 'glib-2.0', 'gobject-2.0'],
1004 if get_option('introspection').enabled()
1005 error('introspection requires gobject to be enabled')
1011 'check-c-linkage-decls',
1012 'check-externs',
1013 'check-header-guards',
1014 'check-includes',
1034 dist_check_script += ['check-static-inits', 'check-symbols']
1036 dist_check_script += ['check-libstdc++']
1043 depends: name == 'check-symbols' ? defs_list : [],