• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) Huawei Technologies Co., Ltd. 2021. All rights reserved.
2
3import("//build/ohos.gni")
4
5group("glib_packages") {
6    deps = [
7        ":glib",
8        ":gmodule",
9        ":gobject",
10    ]
11}
12
13config("glib_config") {
14    visibility = [ ":*" ]
15    include_dirs = [
16        ".",
17        "glib/libcharset",
18        "glib/pcre",
19        "glib",
20        "glib/deprecated",
21    ]
22    cflags = [
23        "-DG_LOG_DOMAIN=\"GLib\"",
24        "-DGLIB_CHARSETALIAS_DIR=\"system/lib64\"",
25        "-DHAVE_MEMMOVE",
26        "-DSUPPORT_UCP",
27        "-DSUPPORT_UTF",
28        "-DSUPPORT_UTF8",
29        "-DNEWLINE=-1",
30        "-DMATCH_LIMIT=10000000",
31        "-DMATCH_LIMIT_RECURSION=8192",
32        "-DMAX_NAME_SIZE=32",
33        "-DMAX_NAME_COUNT=10000",
34        "-DMAX_DUPLENGTH=30000",
35        "-DLINK_SIZE=2",
36        "-DPOSIX_MALLOC_THRESHOLD=10",
37        "-DPCRE_STATIC",
38        "-UBSR_ANYCRLF",
39        "-UEBCDIC",
40        "-DGLIB_COMPILATION",
41        "-Wno-sign-compare",
42        "-Wno-unused-value",
43        "-Wno-unused-function",
44        "-Wno-int-conversion",
45    ]
46}
47
48ohos_source_set("glib_source") {
49    sources = [
50        "glib/libcharset/localcharset.c",
51        "glib/pcre/pcre_byte_order.c",
52        "glib/pcre/pcre_chartables.c",
53        "glib/pcre/pcre_compile.c",
54        "glib/pcre/pcre_config.c",
55        "glib/pcre/pcre_dfa_exec.c",
56        "glib/pcre/pcre_exec.c",
57        "glib/pcre/pcre_fullinfo.c",
58        "glib/pcre/pcre_get.c",
59        "glib/pcre/pcre_globals.c",
60        "glib/pcre/pcre_jit_compile.c",
61        "glib/pcre/pcre_newline.c",
62        "glib/pcre/pcre_ord2utf8.c",
63        "glib/pcre/pcre_string_utils.c",
64        "glib/pcre/pcre_study.c",
65        "glib/pcre/pcre_tables.c",
66        "glib/pcre/pcre_valid_utf8.c",
67        "glib/pcre/pcre_version.c",
68        "glib/pcre/pcre_xclass.c",
69        "glib/deprecated/gallocator.c",
70        "glib/deprecated/gcache.c",
71        "glib/deprecated/gcompletion.c",
72        "glib/deprecated/grel.c",
73        "glib/deprecated/gthread-deprecated.c",
74        "glib/garcbox.c",
75        "glib/garray.c",
76        "glib/gasyncqueue.c",
77        "glib/gatomic.c",
78        "glib/gbacktrace.c",
79        "glib/gbase64.c",
80        "glib/gbitlock.c",
81        "glib/gbookmarkfile.c",
82        "glib/gbytes.c",
83        "glib/gcharset.c",
84        "glib/gchecksum.c",
85        "glib/gconvert.c",
86        "glib/gdataset.c",
87        "glib/gdate.c",
88        "glib/gdatetime.c",
89        "glib/gdir.c",
90        "glib/genviron.c",
91        "glib/gerror.c",
92        "glib/gfileutils.c",
93        "glib/ggettext.c",
94        "glib/ghash.c",
95        "glib/ghmac.c",
96        "glib/ghook.c",
97        "glib/ghostutils.c",
98        "glib/giochannel.c",
99        "glib/gkeyfile.c",
100        "glib/glib-init.c",
101        "glib/glib-private.c",
102        "glib/glist.c",
103        "glib/gmain.c",
104        "glib/gmappedfile.c",
105        "glib/gmarkup.c",
106        "glib/gmem.c",
107        "glib/gmessages.c",
108        "glib/gnode.c",
109        "glib/goption.c",
110        "glib/gpattern.c",
111        "glib/gpoll.c",
112        "glib/gprimes.c",
113        "glib/gqsort.c",
114        "glib/gquark.c",
115        "glib/gqueue.c",
116        "glib/grand.c",
117        "glib/grcbox.c",
118        "glib/grefcount.c",
119        "glib/grefstring.c",
120        "glib/gregex.c",
121        "glib/gscanner.c",
122        "glib/gsequence.c",
123        "glib/gshell.c",
124        "glib/gslice.c",
125        "glib/gslist.c",
126        "glib/gstdio.c",
127        "glib/gstrfuncs.c",
128        "glib/gstring.c",
129        "glib/gstringchunk.c",
130        "glib/gtestutils.c",
131        "glib/gthread.c",
132        "glib/gthreadpool.c",
133        "glib/gtimer.c",
134        "glib/gtimezone.c",
135        "glib/gtranslit.c",
136        "glib/gtrashstack.c",
137        "glib/gtree.c",
138        "glib/guniprop.c",
139        "glib/gutf8.c",
140        "glib/gunibreak.c",
141        "glib/gunicollate.c",
142        "glib/gunidecomp.c",
143        "glib/gurifuncs.c",
144        "glib/gutils.c",
145        "glib/gutilsprivate.h",
146        "glib/guuid.c",
147        "glib/gvariant.c",
148        "glib/gvariant-core.c",
149        "glib/gvariant-parser.c",
150        "glib/gvariant-serialiser.c",
151        "glib/gvarianttypeinfo.c",
152        "glib/gvarianttype.c",
153        "glib/gversion.c",
154        "glib/gwakeup.c",
155        "glib/gprintf.c",
156        "glib/glib-unix.c",
157        "glib/gspawn.c",
158        "glib/giounix.c",
159        "glib/gthread-posix.c",
160    ]
161
162    configs = [
163        ":glib_config",
164    ]
165}
166ohos_shared_library("glib") {
167    deps = [
168        ":glib_source",
169    ]
170    part_name = "multimedia_histreamer"
171    subsystem_name = "multimedia"
172}
173
174
175config("gmodule_config") {
176    visibility = [ ":*" ]
177    include_dirs = [
178        ".",
179        "gmodule",
180        "glib",
181    ]
182    cflags = [
183        "-DG_LOG_DOMAIN=\"GModule\""
184    ]
185}
186
187ohos_source_set("gmodule_source") {
188    sources = [
189        "gmodule/gmodule.c",
190    ]
191
192    configs = [
193        ":gmodule_config",
194    ]
195}
196ohos_shared_library("gmodule") {
197    deps = [
198        ":gmodule_source",
199        ":glib",
200    ]
201    part_name = "multimedia_histreamer"
202    subsystem_name = "multimedia"
203}
204
205
206config("gobject_config") {
207    visibility = [ ":*" ]
208    include_dirs = [
209        ".",
210        "gobject",
211        "glib",
212        "//third_party/libffi/include",
213    ]
214    cflags = [
215        "-DG_LOG_DOMAIN=\"GObject\"",
216        "-DGOBJECT_COMPILATION",
217        "-Wno-sign-compare",
218        "-Wno-unused-function",
219        "-Wno-int-conversion",
220    ]
221}
222
223ohos_source_set("gobject_source") {
224    sources = [
225        "gobject/gatomicarray.c",
226        "gobject/gbinding.c",
227        "gobject/gboxed.c",
228        "gobject/gclosure.c",
229        "gobject/genums.c",
230        "gobject/gmarshal.c",
231        "gobject/gobject.c",
232        "gobject/gparam.c",
233        "gobject/gparamspecs.c",
234        "gobject/gsignal.c",
235        "gobject/gsourceclosure.c",
236        "gobject/gtype.c",
237        "gobject/gtypemodule.c",
238        "gobject/gtypeplugin.c",
239        "gobject/gvalue.c",
240        "gobject/gvaluearray.c",
241        "gobject/gvaluetransform.c",
242        "gobject/gvaluetypes.c",
243    ]
244
245    configs = [
246        ":gobject_config",
247    ]
248}
249
250ohos_shared_library("gobject") {
251    deps = [
252        ":gobject_source",
253        ":glib",
254        "//third_party/libffi:ffi",
255    ]
256    part_name = "multimedia_histreamer"
257    subsystem_name = "multimedia"
258}
259