1b5975d6bSopenharmony_ci# Copyright (c) Huawei Technologies Co., Ltd. 2021. All rights reserved. 2b5975d6bSopenharmony_ci 3b5975d6bSopenharmony_ciimport("//build/ohos.gni") 4b5975d6bSopenharmony_ciimport("config.gni") 5b5975d6bSopenharmony_ci 6b5975d6bSopenharmony_ciglib_path = rebase_path("//third_party/glib") 7b5975d6bSopenharmony_ciexec_script("install.sh", [ "$glib_path" ]) 8b5975d6bSopenharmony_ci 9b5975d6bSopenharmony_ciPCRE2_LIB_DIR = "//third_party/pcre2/pcre2" 10b5975d6bSopenharmony_ci 11b5975d6bSopenharmony_ciohos_shared_library("glibpcre") { 12b5975d6bSopenharmony_ci branch_protector_ret = "pac_ret" 13b5975d6bSopenharmony_ci md5_check_script = rebase_path("$PCRE2_LIB_DIR/check_md5.sh") 14b5975d6bSopenharmony_ci _arguments_config = [ 15b5975d6bSopenharmony_ci rebase_path("$PCRE2_LIB_DIR/src/config.h.generic"), 16b5975d6bSopenharmony_ci rebase_path("$PCRE2_LIB_DIR/src/config.h"), 17b5975d6bSopenharmony_ci ] 18b5975d6bSopenharmony_ci 19b5975d6bSopenharmony_ci check_config_result = 20b5975d6bSopenharmony_ci exec_script(md5_check_script, _arguments_config, "string") 21b5975d6bSopenharmony_ci if (check_config_result == "") { 22b5975d6bSopenharmony_ci exec_script("/usr/bin/env", 23b5975d6bSopenharmony_ci [ 24b5975d6bSopenharmony_ci "cp", 25b5975d6bSopenharmony_ci rebase_path("$PCRE2_LIB_DIR/src/config.h.generic"), 26b5975d6bSopenharmony_ci rebase_path("$PCRE2_LIB_DIR/src/config.h"), 27b5975d6bSopenharmony_ci ]) 28b5975d6bSopenharmony_ci } 29b5975d6bSopenharmony_ci 30b5975d6bSopenharmony_ci _arguments_pcre2 = [ 31b5975d6bSopenharmony_ci rebase_path("$PCRE2_LIB_DIR/src/pcre2.h.generic"), 32b5975d6bSopenharmony_ci rebase_path("$PCRE2_LIB_DIR/src/pcre2.h"), 33b5975d6bSopenharmony_ci ] 34b5975d6bSopenharmony_ci 35b5975d6bSopenharmony_ci check_pcre2_result = exec_script(md5_check_script, _arguments_pcre2, "string") 36b5975d6bSopenharmony_ci if (check_pcre2_result == "") { 37b5975d6bSopenharmony_ci exec_script("/usr/bin/env", 38b5975d6bSopenharmony_ci [ 39b5975d6bSopenharmony_ci "cp", 40b5975d6bSopenharmony_ci rebase_path("$PCRE2_LIB_DIR/src/pcre2.h.generic"), 41b5975d6bSopenharmony_ci rebase_path("$PCRE2_LIB_DIR/src/pcre2.h"), 42b5975d6bSopenharmony_ci ]) 43b5975d6bSopenharmony_ci } 44b5975d6bSopenharmony_ci 45b5975d6bSopenharmony_ci _arguments_pcre2_chartables = [ 46b5975d6bSopenharmony_ci rebase_path("$PCRE2_LIB_DIR/src/pcre2_chartables.c.dist"), 47b5975d6bSopenharmony_ci rebase_path("$PCRE2_LIB_DIR/src/pcre2_chartables.c"), 48b5975d6bSopenharmony_ci ] 49b5975d6bSopenharmony_ci 50b5975d6bSopenharmony_ci check_pcre2_chartables_result = 51b5975d6bSopenharmony_ci exec_script(md5_check_script, _arguments_pcre2_chartables, "string") 52b5975d6bSopenharmony_ci if (check_pcre2_chartables_result == "") { 53b5975d6bSopenharmony_ci exec_script("/usr/bin/env", 54b5975d6bSopenharmony_ci [ 55b5975d6bSopenharmony_ci "cp", 56b5975d6bSopenharmony_ci rebase_path("$PCRE2_LIB_DIR/src/pcre2_chartables.c.dist"), 57b5975d6bSopenharmony_ci rebase_path("$PCRE2_LIB_DIR/src/pcre2_chartables.c"), 58b5975d6bSopenharmony_ci ]) 59b5975d6bSopenharmony_ci } 60b5975d6bSopenharmony_ci sources = [ 61b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_auto_possess.c", 62b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_chartables.c", 63b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_compile.c", 64b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_config.c", 65b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_context.c", 66b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_convert.c", 67b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_dfa_match.c", 68b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_error.c", 69b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_extuni.c", 70b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_find_bracket.c", 71b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_jit_compile.c", 72b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_maketables.c", 73b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_match.c", 74b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_match_data.c", 75b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_newline.c", 76b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_ord2utf.c", 77b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_pattern_info.c", 78b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_script_run.c", 79b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_serialize.c", 80b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_string_utils.c", 81b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_study.c", 82b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_substitute.c", 83b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_substring.c", 84b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_tables.c", 85b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_ucd.c", 86b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_valid_utf.c", 87b5975d6bSopenharmony_ci "$PCRE2_LIB_DIR/src/pcre2_xclass.c", 88b5975d6bSopenharmony_ci ] 89b5975d6bSopenharmony_ci include_dirs = [ "$PCRE2_LIB_DIR/src" ] 90b5975d6bSopenharmony_ci cflags = [ 91b5975d6bSopenharmony_ci "-D_GNU_SOURCE", 92b5975d6bSopenharmony_ci "-DHAVE_CONFIG_H", 93b5975d6bSopenharmony_ci "-DSUPPORT_PCRE2_8=1", 94b5975d6bSopenharmony_ci "-DSUPPORT_UNICODE=1", 95b5975d6bSopenharmony_ci "-DPCRE2_CODE_UNIT_WIDTH=8", 96b5975d6bSopenharmony_ci "-w", 97b5975d6bSopenharmony_ci ] 98b5975d6bSopenharmony_ci innerapi_tags = [ "platformsdk" ] 99b5975d6bSopenharmony_ci part_name = "glib" 100b5975d6bSopenharmony_ci subsystem_name = "thirdparty" 101b5975d6bSopenharmony_ci} 102b5975d6bSopenharmony_ci 103b5975d6bSopenharmony_cigroup("glib_packages") { 104b5975d6bSopenharmony_ci deps = [ 105b5975d6bSopenharmony_ci ":glib", 106b5975d6bSopenharmony_ci ":gmodule", 107b5975d6bSopenharmony_ci ":gobject", 108b5975d6bSopenharmony_ci ] 109b5975d6bSopenharmony_ci} 110b5975d6bSopenharmony_ci 111b5975d6bSopenharmony_ciconfig("glib_config") { 112b5975d6bSopenharmony_ci visibility = [ ":*" ] 113b5975d6bSopenharmony_ci include_dirs = [ 114b5975d6bSopenharmony_ci ".", 115b5975d6bSopenharmony_ci "glib/libcharset", 116b5975d6bSopenharmony_ci "glib", 117b5975d6bSopenharmony_ci "glib/deprecated", 118b5975d6bSopenharmony_ci "//third_party/pcre2/pcre2/src", 119b5975d6bSopenharmony_ci "//foundation/multimedia/media_standard/services/utils", 120b5975d6bSopenharmony_ci "glibmemdfx", 121b5975d6bSopenharmony_ci ] 122b5975d6bSopenharmony_ci cflags = [ 123b5975d6bSopenharmony_ci "-DG_LOG_DOMAIN=\"GLib\"", 124b5975d6bSopenharmony_ci "-DGLIB_CHARSETALIAS_DIR=\"system/lib64\"", 125b5975d6bSopenharmony_ci "-DHAVE_MEMMOVE", 126b5975d6bSopenharmony_ci "-DSUPPORT_UCP", 127b5975d6bSopenharmony_ci "-DSUPPORT_UTF", 128b5975d6bSopenharmony_ci "-DSUPPORT_UTF8", 129b5975d6bSopenharmony_ci "-DNEWLINE=-1", 130b5975d6bSopenharmony_ci "-DMATCH_LIMIT=10000000", 131b5975d6bSopenharmony_ci "-DMATCH_LIMIT_RECURSION=8192", 132b5975d6bSopenharmony_ci "-DMAX_NAME_SIZE=32", 133b5975d6bSopenharmony_ci "-DMAX_NAME_COUNT=10000", 134b5975d6bSopenharmony_ci "-DMAX_DUPLENGTH=30000", 135b5975d6bSopenharmony_ci "-DLINK_SIZE=2", 136b5975d6bSopenharmony_ci "-DPOSIX_MALLOC_THRESHOLD=10", 137b5975d6bSopenharmony_ci "-DOHOS_OPT_COMPAT", 138b5975d6bSopenharmony_ci "-UBSR_ANYCRLF", 139b5975d6bSopenharmony_ci "-UEBCDIC", 140b5975d6bSopenharmony_ci "-DGLIB_COMPILATION", 141b5975d6bSopenharmony_ci "-Wno-sign-compare", 142b5975d6bSopenharmony_ci "-Wno-unused-value", 143b5975d6bSopenharmony_ci "-Wno-unused-function", 144b5975d6bSopenharmony_ci "-Wno-int-conversion", 145b5975d6bSopenharmony_ci ] 146b5975d6bSopenharmony_ci if (is_standard_system) { 147b5975d6bSopenharmony_ci cflags += [ 148b5975d6bSopenharmony_ci "-DG_MEM_DFX", 149b5975d6bSopenharmony_ci "-DOHOS_OPT_PERFORMANCE", 150b5975d6bSopenharmony_ci ] 151b5975d6bSopenharmony_ci } 152b5975d6bSopenharmony_ci} 153b5975d6bSopenharmony_ci 154b5975d6bSopenharmony_ciohos_source_set("glib_source") { 155b5975d6bSopenharmony_ci branch_protector_ret = "pac_ret" 156b5975d6bSopenharmony_ci sources = [ 157b5975d6bSopenharmony_ci "glib/deprecated/gallocator.c", 158b5975d6bSopenharmony_ci "glib/deprecated/gcache.c", 159b5975d6bSopenharmony_ci "glib/deprecated/gcompletion.c", 160b5975d6bSopenharmony_ci "glib/deprecated/grel.c", 161b5975d6bSopenharmony_ci "glib/deprecated/gthread-deprecated.c", 162b5975d6bSopenharmony_ci "glib/garcbox.c", 163b5975d6bSopenharmony_ci "glib/garray.c", 164b5975d6bSopenharmony_ci "glib/gasyncqueue.c", 165b5975d6bSopenharmony_ci "glib/gatomic.c", 166b5975d6bSopenharmony_ci "glib/gbacktrace.c", 167b5975d6bSopenharmony_ci "glib/gbase64.c", 168b5975d6bSopenharmony_ci "glib/gbitlock.c", 169b5975d6bSopenharmony_ci "glib/gbookmarkfile.c", 170b5975d6bSopenharmony_ci "glib/gbytes.c", 171b5975d6bSopenharmony_ci "glib/gcharset.c", 172b5975d6bSopenharmony_ci "glib/gchecksum.c", 173b5975d6bSopenharmony_ci "glib/gconvert.c", 174b5975d6bSopenharmony_ci "glib/gdataset.c", 175b5975d6bSopenharmony_ci "glib/gdate.c", 176b5975d6bSopenharmony_ci "glib/gdatetime.c", 177b5975d6bSopenharmony_ci "glib/gdir.c", 178b5975d6bSopenharmony_ci "glib/genviron.c", 179b5975d6bSopenharmony_ci "glib/gerror.c", 180b5975d6bSopenharmony_ci "glib/gfileutils.c", 181b5975d6bSopenharmony_ci "glib/ggettext.c", 182b5975d6bSopenharmony_ci "glib/ghash.c", 183b5975d6bSopenharmony_ci "glib/ghmac.c", 184b5975d6bSopenharmony_ci "glib/ghook.c", 185b5975d6bSopenharmony_ci "glib/ghostutils.c", 186b5975d6bSopenharmony_ci "glib/giochannel.c", 187b5975d6bSopenharmony_ci "glib/giounix.c", 188b5975d6bSopenharmony_ci "glib/gkeyfile.c", 189b5975d6bSopenharmony_ci "glib/glib-init.c", 190b5975d6bSopenharmony_ci "glib/glib-private.c", 191b5975d6bSopenharmony_ci "glib/glib-unix.c", 192b5975d6bSopenharmony_ci "glib/glist.c", 193b5975d6bSopenharmony_ci "glib/gmain.c", 194b5975d6bSopenharmony_ci "glib/gmappedfile.c", 195b5975d6bSopenharmony_ci "glib/gmarkup.c", 196b5975d6bSopenharmony_ci "glib/gmem.c", 197b5975d6bSopenharmony_ci "glib/gmessages.c", 198b5975d6bSopenharmony_ci "glib/gnode.c", 199b5975d6bSopenharmony_ci "glib/goption.c", 200b5975d6bSopenharmony_ci "glib/gpattern.c", 201b5975d6bSopenharmony_ci "glib/gpoll.c", 202b5975d6bSopenharmony_ci "glib/gprimes.c", 203b5975d6bSopenharmony_ci "glib/gprintf.c", 204b5975d6bSopenharmony_ci "glib/gqsort.c", 205b5975d6bSopenharmony_ci "glib/gquark.c", 206b5975d6bSopenharmony_ci "glib/gqueue.c", 207b5975d6bSopenharmony_ci "glib/grand.c", 208b5975d6bSopenharmony_ci "glib/grcbox.c", 209b5975d6bSopenharmony_ci "glib/grefcount.c", 210b5975d6bSopenharmony_ci "glib/grefstring.c", 211b5975d6bSopenharmony_ci "glib/gregex.c", 212b5975d6bSopenharmony_ci "glib/gscanner.c", 213b5975d6bSopenharmony_ci "glib/gsequence.c", 214b5975d6bSopenharmony_ci "glib/gshell.c", 215b5975d6bSopenharmony_ci "glib/gslice.c", 216b5975d6bSopenharmony_ci "glib/gslist.c", 217b5975d6bSopenharmony_ci "glib/gspawn.c", 218b5975d6bSopenharmony_ci "glib/gstdio.c", 219b5975d6bSopenharmony_ci "glib/gstrfuncs.c", 220b5975d6bSopenharmony_ci "glib/gstring.c", 221b5975d6bSopenharmony_ci "glib/gstringchunk.c", 222b5975d6bSopenharmony_ci "glib/gtestutils.c", 223b5975d6bSopenharmony_ci "glib/gthread-posix.c", 224b5975d6bSopenharmony_ci "glib/gthread.c", 225b5975d6bSopenharmony_ci "glib/gthreadpool.c", 226b5975d6bSopenharmony_ci "glib/gtimer.c", 227b5975d6bSopenharmony_ci "glib/gtimezone.c", 228b5975d6bSopenharmony_ci "glib/gtrace.c", 229b5975d6bSopenharmony_ci "glib/gtranslit.c", 230b5975d6bSopenharmony_ci "glib/gtrashstack.c", 231b5975d6bSopenharmony_ci "glib/gtree.c", 232b5975d6bSopenharmony_ci "glib/gunibreak.c", 233b5975d6bSopenharmony_ci "glib/gunicollate.c", 234b5975d6bSopenharmony_ci "glib/gunidecomp.c", 235b5975d6bSopenharmony_ci "glib/guniprop.c", 236b5975d6bSopenharmony_ci "glib/guri.c", 237b5975d6bSopenharmony_ci "glib/gutf8.c", 238b5975d6bSopenharmony_ci "glib/gutils.c", 239b5975d6bSopenharmony_ci "glib/gutilsprivate.h", 240b5975d6bSopenharmony_ci "glib/guuid.c", 241b5975d6bSopenharmony_ci "glib/gvariant-core.c", 242b5975d6bSopenharmony_ci "glib/gvariant-parser.c", 243b5975d6bSopenharmony_ci "glib/gvariant-serialiser.c", 244b5975d6bSopenharmony_ci "glib/gvariant.c", 245b5975d6bSopenharmony_ci "glib/gvarianttype.c", 246b5975d6bSopenharmony_ci "glib/gvarianttypeinfo.c", 247b5975d6bSopenharmony_ci "glib/gversion.c", 248b5975d6bSopenharmony_ci "glib/gwakeup.c", 249b5975d6bSopenharmony_ci "glib/libcharset/localcharset.c", 250b5975d6bSopenharmony_ci ] 251b5975d6bSopenharmony_ci 252b5975d6bSopenharmony_ci configs = [ ":glib_config" ] 253b5975d6bSopenharmony_ci} 254b5975d6bSopenharmony_ci 255b5975d6bSopenharmony_ciconfig("public_header_config") { 256b5975d6bSopenharmony_ci include_dirs = [ 257b5975d6bSopenharmony_ci ".", 258b5975d6bSopenharmony_ci "glib", 259b5975d6bSopenharmony_ci ] 260b5975d6bSopenharmony_ci} 261b5975d6bSopenharmony_ci 262b5975d6bSopenharmony_ciohos_shared_library("glib") { 263b5975d6bSopenharmony_ci branch_protector_ret = "pac_ret" 264b5975d6bSopenharmony_ci deps = [ 265b5975d6bSopenharmony_ci ":glib_source", 266b5975d6bSopenharmony_ci "//third_party/glib:glibpcre", 267b5975d6bSopenharmony_ci ] 268b5975d6bSopenharmony_ci public_configs = [ ":public_header_config" ] 269b5975d6bSopenharmony_ci if (is_standard_system) { 270b5975d6bSopenharmony_ci deps += [ ":g_mem_dfx" ] 271b5975d6bSopenharmony_ci } 272b5975d6bSopenharmony_ci innerapi_tags = [ "platformsdk" ] 273b5975d6bSopenharmony_ci part_name = "glib" 274b5975d6bSopenharmony_ci subsystem_name = "thirdparty" 275b5975d6bSopenharmony_ci} 276b5975d6bSopenharmony_ci 277b5975d6bSopenharmony_ciconfig("gmodule_config") { 278b5975d6bSopenharmony_ci visibility = [ ":*" ] 279b5975d6bSopenharmony_ci include_dirs = [ 280b5975d6bSopenharmony_ci ".", 281b5975d6bSopenharmony_ci "gmodule", 282b5975d6bSopenharmony_ci "glib", 283b5975d6bSopenharmony_ci ] 284b5975d6bSopenharmony_ci cflags = [ "-DG_LOG_DOMAIN=\"GModule\"" ] 285b5975d6bSopenharmony_ci} 286b5975d6bSopenharmony_ci 287b5975d6bSopenharmony_ciohos_source_set("gmodule_source") { 288b5975d6bSopenharmony_ci sources = [ "gmodule/gmodule.c" ] 289b5975d6bSopenharmony_ci 290b5975d6bSopenharmony_ci configs = [ ":gmodule_config" ] 291b5975d6bSopenharmony_ci} 292b5975d6bSopenharmony_ciohos_shared_library("gmodule") { 293b5975d6bSopenharmony_ci deps = [ 294b5975d6bSopenharmony_ci ":glib", 295b5975d6bSopenharmony_ci ":gmodule_source", 296b5975d6bSopenharmony_ci ] 297b5975d6bSopenharmony_ci part_name = "glib" 298b5975d6bSopenharmony_ci subsystem_name = "thirdparty" 299b5975d6bSopenharmony_ci} 300b5975d6bSopenharmony_ci 301b5975d6bSopenharmony_ciconfig("gobject_config") { 302b5975d6bSopenharmony_ci visibility = [ ":*" ] 303b5975d6bSopenharmony_ci include_dirs = [ 304b5975d6bSopenharmony_ci ".", 305b5975d6bSopenharmony_ci "gobject", 306b5975d6bSopenharmony_ci "glib", 307b5975d6bSopenharmony_ci ] 308b5975d6bSopenharmony_ci cflags = [ 309b5975d6bSopenharmony_ci "-DG_LOG_DOMAIN=\"GObject\"", 310b5975d6bSopenharmony_ci "-DGOBJECT_COMPILATION", 311b5975d6bSopenharmony_ci "-Wno-sign-compare", 312b5975d6bSopenharmony_ci "-Wno-unused-function", 313b5975d6bSopenharmony_ci "-Wno-int-conversion", 314b5975d6bSopenharmony_ci ] 315b5975d6bSopenharmony_ci} 316b5975d6bSopenharmony_ci 317b5975d6bSopenharmony_ciohos_source_set("gobject_source") { 318b5975d6bSopenharmony_ci sources = [ 319b5975d6bSopenharmony_ci "gobject/gatomicarray.c", 320b5975d6bSopenharmony_ci "gobject/gbinding.c", 321b5975d6bSopenharmony_ci "gobject/gboxed.c", 322b5975d6bSopenharmony_ci "gobject/gclosure.c", 323b5975d6bSopenharmony_ci "gobject/genums.c", 324b5975d6bSopenharmony_ci "gobject/gmarshal.c", 325b5975d6bSopenharmony_ci "gobject/gobject.c", 326b5975d6bSopenharmony_ci "gobject/gparam.c", 327b5975d6bSopenharmony_ci "gobject/gparamspecs.c", 328b5975d6bSopenharmony_ci "gobject/gsignal.c", 329b5975d6bSopenharmony_ci "gobject/gsourceclosure.c", 330b5975d6bSopenharmony_ci "gobject/gtype.c", 331b5975d6bSopenharmony_ci "gobject/gtypemodule.c", 332b5975d6bSopenharmony_ci "gobject/gtypeplugin.c", 333b5975d6bSopenharmony_ci "gobject/gvalue.c", 334b5975d6bSopenharmony_ci "gobject/gvaluearray.c", 335b5975d6bSopenharmony_ci "gobject/gvaluetransform.c", 336b5975d6bSopenharmony_ci "gobject/gvaluetypes.c", 337b5975d6bSopenharmony_ci ] 338b5975d6bSopenharmony_ci 339b5975d6bSopenharmony_ci configs = [ ":gobject_config" ] 340b5975d6bSopenharmony_ci 341b5975d6bSopenharmony_ci external_deps = [ "libffi:ffi" ] 342b5975d6bSopenharmony_ci part_name = "glib" 343b5975d6bSopenharmony_ci subsystem_name = "thirdparty" 344b5975d6bSopenharmony_ci} 345b5975d6bSopenharmony_ci 346b5975d6bSopenharmony_ciohos_shared_library("gobject") { 347b5975d6bSopenharmony_ci deps = [ 348b5975d6bSopenharmony_ci ":glib", 349b5975d6bSopenharmony_ci ":gobject_source", 350b5975d6bSopenharmony_ci ] 351b5975d6bSopenharmony_ci 352b5975d6bSopenharmony_ci external_deps = [ "libffi:ffi" ] 353b5975d6bSopenharmony_ci part_name = "glib" 354b5975d6bSopenharmony_ci subsystem_name = "thirdparty" 355b5975d6bSopenharmony_ci} 356b5975d6bSopenharmony_ci 357b5975d6bSopenharmony_ci############################################################################# 358b5975d6bSopenharmony_ci############################################################################# 359b5975d6bSopenharmony_ci############################################################################# 360b5975d6bSopenharmony_ci 361b5975d6bSopenharmony_ciconfig("g_mem_dfx_config") { 362b5975d6bSopenharmony_ci include_dirs = [ 363b5975d6bSopenharmony_ci "glibmemdfx", 364b5975d6bSopenharmony_ci "//commonlibrary/c_utils/base/include", 365b5975d6bSopenharmony_ci "//foundation/multimedia/media_standard/interfaces/inner_api/native", 366b5975d6bSopenharmony_ci "//base/hiviewdfx/hisysevent/interfaces/native/innerkits/hisysevent/include", 367b5975d6bSopenharmony_ci ] 368b5975d6bSopenharmony_ci} 369b5975d6bSopenharmony_ci 370b5975d6bSopenharmony_ciohos_shared_library("g_mem_dfx") { 371b5975d6bSopenharmony_ci branch_protector_ret = "pac_ret" 372b5975d6bSopenharmony_ci sources = [ "glibmemdfx/gmemdfx.cpp" ] 373b5975d6bSopenharmony_ci 374b5975d6bSopenharmony_ci include_dirs = [ "//commonlibrary/c_utils/base/include" ] 375b5975d6bSopenharmony_ci 376b5975d6bSopenharmony_ci cflags = [ 377b5975d6bSopenharmony_ci "-std=c++17", 378b5975d6bSopenharmony_ci "-fno-rtti", 379b5975d6bSopenharmony_ci "-fno-exceptions", 380b5975d6bSopenharmony_ci "-Wall", 381b5975d6bSopenharmony_ci "-fno-common", 382b5975d6bSopenharmony_ci "-fstack-protector-strong", 383b5975d6bSopenharmony_ci "-Wshadow", 384b5975d6bSopenharmony_ci "-FPIC", 385b5975d6bSopenharmony_ci "-FS", 386b5975d6bSopenharmony_ci "-O2", 387b5975d6bSopenharmony_ci "-D_FORTIFY_SOURCE=2", 388b5975d6bSopenharmony_ci "-fvisibility=hidden", 389b5975d6bSopenharmony_ci "-Wformat=2", 390b5975d6bSopenharmony_ci "-Wfloat-equal", 391b5975d6bSopenharmony_ci "-Wdate-time", 392b5975d6bSopenharmony_ci ] 393b5975d6bSopenharmony_ci 394b5975d6bSopenharmony_ci configs = [ ":g_mem_dfx_config" ] 395b5975d6bSopenharmony_ci 396b5975d6bSopenharmony_ci external_deps = [ 397b5975d6bSopenharmony_ci "c_utils:utils", 398b5975d6bSopenharmony_ci "faultloggerd:libdfx_dumpcatcher", 399b5975d6bSopenharmony_ci "hilog:libhilog", 400b5975d6bSopenharmony_ci "hisysevent:libhisysevent", 401b5975d6bSopenharmony_ci "hitrace:hitrace_meter", 402b5975d6bSopenharmony_ci "init:libbegetutil", 403b5975d6bSopenharmony_ci ] 404b5975d6bSopenharmony_ci 405b5975d6bSopenharmony_ci innerapi_tags = [ "platformsdk" ] 406b5975d6bSopenharmony_ci subsystem_name = "thirdparty" 407b5975d6bSopenharmony_ci part_name = "glib" 408b5975d6bSopenharmony_ci} 409