Bug 1862332 [wpt PR 42877] - WebKit export of https://bugs.webkit.org/show_bug.cgi...
[gecko.git] / gfx / harfbuzz / src / moz.build
blob7944026c271a62e1d736e1f76daecd5effa67f96
1 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
2 # vim: set filetype=python:
3 # This Source Code Form is subject to the terms of the Mozilla Public
4 # License, v. 2.0. If a copy of the MPL was not distributed with this
5 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
7 FILES_PER_UNIFIED_FILE = 100
9 EXPORTS.harfbuzz += [
10     'hb-aat-layout.h',
11     'hb-aat.h',
12     'hb-blob.h',
13     'hb-buffer.h',
14     'hb-common.h',
15     'hb-deprecated.h',
16     'hb-draw.h',
17     'hb-face.h',
18     'hb-font.h',
19     'hb-map.h',
20     'hb-ot-color.h',
21     'hb-ot-deprecated.h',
22     'hb-ot-font.h',
23     'hb-ot-layout.h',
24     'hb-ot-math.h',
25     'hb-ot-meta.h',
26     'hb-ot-metrics.h',
27     'hb-ot-name.h',
28     'hb-ot-shape.h',
29     'hb-ot-var.h',
30     'hb-ot.h',
31     'hb-paint.h',
32     'hb-set.h',
33     'hb-shape-plan.h',
34     'hb-shape.h',
35     'hb-style.h',
36     'hb-unicode.h',
37     'hb-version.h',
38     'hb.h',
41 UNIFIED_SOURCES += [
42     'hb-aat-layout.cc',
43     'hb-aat-map.cc',
44     'hb-blob.cc',
45     'hb-buffer.cc',
46     'hb-common.cc',
47     'hb-draw.cc',
48     'hb-face-builder.cc',
49     'hb-face.cc',
50     'hb-font.cc',
51     'hb-map.cc',
52     'hb-number.cc',
53     'hb-ot-cff1-table.cc',
54     'hb-ot-cff2-table.cc',
55     'hb-ot-color.cc',
56     'hb-ot-face.cc',
57     'hb-ot-font.cc',
58     'hb-ot-layout.cc',
59     'hb-ot-map.cc',
60     'hb-ot-math.cc',
61     'hb-ot-metrics.cc',
62     'hb-ot-name.cc',
63     'hb-ot-shape-fallback.cc',
64     'hb-ot-shape-normalize.cc',
65     'hb-ot-shape.cc',
66     'hb-ot-shaper-arabic.cc',
67     'hb-ot-shaper-default.cc',
68     'hb-ot-shaper-hangul.cc',
69     'hb-ot-shaper-hebrew.cc',
70     'hb-ot-shaper-indic-table.cc',
71     'hb-ot-shaper-indic.cc',
72     'hb-ot-shaper-khmer.cc',
73     'hb-ot-shaper-myanmar.cc',
74     'hb-ot-shaper-syllabic.cc',
75     'hb-ot-shaper-thai.cc',
76     'hb-ot-shaper-use.cc',
77     'hb-ot-shaper-vowel-constraints.cc',
78     'hb-ot-tag.cc',
79     'hb-ot-var.cc',
80     'hb-outline.cc',
81     'hb-paint-extents.cc',
82     'hb-paint.cc',
83     'hb-set.cc',
84     'hb-shape-plan.cc',
85     'hb-shape.cc',
86     'hb-shaper.cc',
87     'hb-static.cc',
88     'hb-style.cc',
89     'hb-unicode.cc',
90     'hb-wasm-api.cc',
91     'hb-wasm-shape.cc',
94 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gtk':
95     EXPORTS.harfbuzz += [
96         'hb-glib.h',
97     ]
98     UNIFIED_SOURCES += [
99         'hb-glib.cc',
100     ]
101     CXXFLAGS += CONFIG['GLIB_CFLAGS']
103 # We allow warnings for third-party code that can be updated from upstream.
104 AllowCompilerWarnings()
106 FINAL_LIBRARY = 'gkmedias'
108 DEFINES['PACKAGE_VERSION'] = '"moz"'
109 DEFINES['PACKAGE_BUGREPORT'] = '"http://bugzilla.mozilla.org/"'
110 DEFINES['HAVE_OT'] = 1
111 DEFINES['HAVE_ROUND'] = 1
112 DEFINES['HB_NO_BUFFER_VERIFY'] = True
113 DEFINES['HB_NO_FALLBACK_SHAPE'] = True
114 DEFINES['HB_NO_UCD'] = True
115 DEFINES['HB_NO_UNICODE_FUNCS'] = True
117 # On Android, we want to use harfbuzz's mmap support for file access,
118 # so we need to set the appropriate configuration flags as we're not
119 # running harfbuzz's own configure script.
120 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android':
121     DEFINES['HAVE_MMAP'] = 1
122     DEFINES['HAVE_SYS_MMAN_H'] = 1
124 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows':
125     DEFINES['UNICODE'] = True