| # Copyright 2014 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//third_party/icu/config.gni") |
| |
| if (is_android) { |
| import("//build/config/android/rules.gni") |
| } |
| |
| # Meta target that includes both icuuc and icui18n. Most targets want both. |
| # You can depend on the individually if you need to. |
| group("icu") { |
| public_deps = [ |
| ":icui18n", |
| ":icuuc", |
| ] |
| } |
| |
| # Shared config used by ICU and all dependents. |
| config("icu_config") { |
| defines = [ |
| # Tell ICU to not insert |using namespace icu;| into its headers, |
| # so that chrome's source explicitly has to use |icu::|. |
| "U_USING_ICU_NAMESPACE=0", |
| |
| # We don't use ICU plugins and dyload is only necessary for them. |
| # NaCl-related builds also fail looking for dlfcn.h when it's enabled. |
| "U_ENABLE_DYLOAD=0", |
| |
| # With exception disabled, MSVC emits C4577 warning on coming across |
| # 'noexcept'. See http://bugs.icu-project.org/trac/ticket/12406 |
| # TODO(jshin): Remove this when updating to a newer version with this fixed. |
| "U_NOEXCEPT=", |
| ] |
| |
| if (!is_component_build) { |
| defines += [ "U_STATIC_IMPLEMENTATION" ] |
| } |
| |
| include_dirs = [ |
| "source/common", |
| "source/i18n", |
| ] |
| |
| if (icu_use_data_file) { |
| defines += [ "ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE" ] |
| } else { |
| if (is_win) { |
| defines += [ "ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_SHARED" ] |
| } else { |
| defines += [ "ICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC" ] |
| } |
| } |
| } |
| |
| # Config used only by ICU code. |
| config("icu_code") { |
| cflags = [] |
| defines = [ |
| "HAVE_DLOPEN=0", |
| |
| # Only build encoding coverters and detectors necessary for HTML5. |
| "UCONFIG_ONLY_HTML_CONVERSION=1", |
| |
| # No dependency on the default platform encoding. |
| # Will cut down the code size. |
| "U_CHARSET_IS_UTF8=1", |
| ] |
| |
| if (is_win) { |
| # Disable some compiler warnings. |
| cflags += [ |
| "/wd4005", # Macro redefinition. |
| "/wd4068", # Unknown pragmas. |
| "/wd4267", # Conversion from size_t on 64-bits. |
| "/wd4996", # Deprecated functions. |
| ] |
| } else if (is_linux || is_android) { |
| cflags += [ |
| # Since ICU wants to internally use its own deprecated APIs, don't |
| # complain about it. |
| "-Wno-deprecated-declarations", |
| "-Wno-unused-function", |
| ] |
| } |
| if (is_clang) { |
| cflags += [ |
| # ICU uses its own deprecated functions. |
| "-Wno-deprecated-declarations", |
| # ICU prefers `a && b || c` over `(a && b) || c`. |
| "-Wno-logical-op-parentheses", |
| # ICU has some `unsigned < 0` checks. |
| "-Wno-tautological-compare", |
| # uresdata.c has switch(RES_GET_TYPE(x)) code. The |
| # RES_GET_TYPE macro returns an UResType enum, but some switch |
| # statement contains case values that aren't part of that |
| # enum (e.g. URES_TABLE32 which is in UResInternalType). This |
| # is on purpose. |
| "-Wno-switch", |
| # ICU has some code with the pattern: |
| # if (found = uprv_getWindowsTimeZoneInfo(...)) |
| "-Wno-parentheses", |
| # ICU generally has no unused variables, but there are a few places where |
| # this warning triggers. |
| # See https://codereview.chromium.org/1222643002/ and |
| # http://www.icu-project.org/trac/ticket/11759. |
| "-Wno-unused-const-variable", |
| # ucnv2022.cpp contains three functions that are only used when |
| # certain preprocessor defines are set. |
| "-Wno-unused-function", |
| ] |
| if (is_win) { |
| cflags += [ |
| # See http://bugs.icu-project.org/trac/ticket/11122 |
| "-Wno-inline-new-delete", |
| "-Wno-implicit-exception-spec-mismatch", |
| ] |
| } |
| } |
| } |
| |
| component("icui18n") { |
| # find source/i18n -maxdepth 1 ! -type d | egrep '\.(c|cpp)$' |\ |
| # sort | sed 's/^\(.*\)$/ "\1",/' |
| sources = [ |
| "source/i18n/affixpatternparser.cpp", |
| "source/i18n/alphaindex.cpp", |
| "source/i18n/anytrans.cpp", |
| "source/i18n/astro.cpp", |
| "source/i18n/basictz.cpp", |
| "source/i18n/bocsu.cpp", |
| "source/i18n/brktrans.cpp", |
| "source/i18n/buddhcal.cpp", |
| "source/i18n/calendar.cpp", |
| "source/i18n/casetrn.cpp", |
| "source/i18n/cecal.cpp", |
| "source/i18n/chnsecal.cpp", |
| "source/i18n/choicfmt.cpp", |
| "source/i18n/coleitr.cpp", |
| "source/i18n/collationbuilder.cpp", |
| "source/i18n/collationcompare.cpp", |
| "source/i18n/collation.cpp", |
| "source/i18n/collationdatabuilder.cpp", |
| "source/i18n/collationdata.cpp", |
| "source/i18n/collationdatareader.cpp", |
| "source/i18n/collationdatawriter.cpp", |
| "source/i18n/collationfastlatinbuilder.cpp", |
| "source/i18n/collationfastlatin.cpp", |
| "source/i18n/collationfcd.cpp", |
| "source/i18n/collationiterator.cpp", |
| "source/i18n/collationkeys.cpp", |
| "source/i18n/collationroot.cpp", |
| "source/i18n/collationrootelements.cpp", |
| "source/i18n/collationruleparser.cpp", |
| "source/i18n/collationsets.cpp", |
| "source/i18n/collationsettings.cpp", |
| "source/i18n/collationtailoring.cpp", |
| "source/i18n/collationweights.cpp", |
| "source/i18n/coll.cpp", |
| "source/i18n/compactdecimalformat.cpp", |
| "source/i18n/coptccal.cpp", |
| "source/i18n/cpdtrans.cpp", |
| "source/i18n/csdetect.cpp", |
| "source/i18n/csmatch.cpp", |
| "source/i18n/csr2022.cpp", |
| "source/i18n/csrecog.cpp", |
| "source/i18n/csrmbcs.cpp", |
| "source/i18n/csrsbcs.cpp", |
| "source/i18n/csrucode.cpp", |
| "source/i18n/csrutf8.cpp", |
| "source/i18n/curramt.cpp", |
| "source/i18n/currfmt.cpp", |
| "source/i18n/currpinf.cpp", |
| "source/i18n/currunit.cpp", |
| "source/i18n/dangical.cpp", |
| "source/i18n/datefmt.cpp", |
| "source/i18n/dcfmtsym.cpp", |
| "source/i18n/decContext.c", |
| "source/i18n/decfmtst.cpp", |
| "source/i18n/decimalformatpattern.cpp", |
| "source/i18n/decimfmt.cpp", |
| "source/i18n/decimfmtimpl.cpp", |
| "source/i18n/decNumber.c", |
| "source/i18n/digitaffix.cpp", |
| "source/i18n/digitaffixesandpadding.cpp", |
| "source/i18n/digitformatter.cpp", |
| "source/i18n/digitgrouping.cpp", |
| "source/i18n/digitinterval.cpp", |
| "source/i18n/digitlst.cpp", |
| "source/i18n/dtfmtsym.cpp", |
| "source/i18n/dtitvfmt.cpp", |
| "source/i18n/dtitvinf.cpp", |
| "source/i18n/dtptngen.cpp", |
| "source/i18n/dtrule.cpp", |
| "source/i18n/esctrn.cpp", |
| "source/i18n/ethpccal.cpp", |
| "source/i18n/fmtable_cnv.cpp", |
| "source/i18n/fmtable.cpp", |
| "source/i18n/format.cpp", |
| "source/i18n/fphdlimp.cpp", |
| "source/i18n/fpositer.cpp", |
| "source/i18n/funcrepl.cpp", |
| "source/i18n/gender.cpp", |
| "source/i18n/gregocal.cpp", |
| "source/i18n/gregoimp.cpp", |
| "source/i18n/hebrwcal.cpp", |
| "source/i18n/identifier_info.cpp", |
| "source/i18n/indiancal.cpp", |
| "source/i18n/inputext.cpp", |
| "source/i18n/islamcal.cpp", |
| "source/i18n/japancal.cpp", |
| "source/i18n/locdspnm.cpp", |
| "source/i18n/measfmt.cpp", |
| "source/i18n/measunit.cpp", |
| "source/i18n/measure.cpp", |
| "source/i18n/msgfmt.cpp", |
| "source/i18n/name2uni.cpp", |
| "source/i18n/nfrs.cpp", |
| "source/i18n/nfrule.cpp", |
| "source/i18n/nfsubs.cpp", |
| "source/i18n/nortrans.cpp", |
| "source/i18n/nultrans.cpp", |
| "source/i18n/numfmt.cpp", |
| "source/i18n/numsys.cpp", |
| "source/i18n/olsontz.cpp", |
| "source/i18n/persncal.cpp", |
| "source/i18n/pluralaffix.cpp", |
| "source/i18n/plurfmt.cpp", |
| "source/i18n/plurrule.cpp", |
| "source/i18n/precision.cpp", |
| "source/i18n/quant.cpp", |
| "source/i18n/quantityformatter.cpp", |
| "source/i18n/rbnf.cpp", |
| "source/i18n/rbt.cpp", |
| "source/i18n/rbt_data.cpp", |
| "source/i18n/rbt_pars.cpp", |
| "source/i18n/rbt_rule.cpp", |
| "source/i18n/rbt_set.cpp", |
| "source/i18n/rbtz.cpp", |
| "source/i18n/regexcmp.cpp", |
| "source/i18n/regeximp.cpp", |
| "source/i18n/regexst.cpp", |
| "source/i18n/regextxt.cpp", |
| "source/i18n/region.cpp", |
| "source/i18n/reldatefmt.cpp", |
| "source/i18n/reldtfmt.cpp", |
| "source/i18n/rematch.cpp", |
| "source/i18n/remtrans.cpp", |
| "source/i18n/repattrn.cpp", |
| "source/i18n/rulebasedcollator.cpp", |
| "source/i18n/scientificnumberformatter.cpp", |
| "source/i18n/scriptset.cpp", |
| "source/i18n/search.cpp", |
| "source/i18n/selfmt.cpp", |
| "source/i18n/sharedbreakiterator.cpp", |
| "source/i18n/simpletz.cpp", |
| "source/i18n/smallintformatter.cpp", |
| "source/i18n/smpdtfmt.cpp", |
| "source/i18n/smpdtfst.cpp", |
| "source/i18n/sortkey.cpp", |
| "source/i18n/standardplural.cpp", |
| "source/i18n/strmatch.cpp", |
| "source/i18n/strrepl.cpp", |
| "source/i18n/stsearch.cpp", |
| "source/i18n/taiwncal.cpp", |
| "source/i18n/timezone.cpp", |
| "source/i18n/titletrn.cpp", |
| "source/i18n/tmunit.cpp", |
| "source/i18n/tmutamt.cpp", |
| "source/i18n/tmutfmt.cpp", |
| "source/i18n/tolowtrn.cpp", |
| "source/i18n/toupptrn.cpp", |
| "source/i18n/translit.cpp", |
| "source/i18n/transreg.cpp", |
| "source/i18n/tridpars.cpp", |
| "source/i18n/tzfmt.cpp", |
| "source/i18n/tzgnames.cpp", |
| "source/i18n/tznames.cpp", |
| "source/i18n/tznames_impl.cpp", |
| "source/i18n/tzrule.cpp", |
| "source/i18n/tztrans.cpp", |
| "source/i18n/ucal.cpp", |
| "source/i18n/ucln_in.cpp", |
| "source/i18n/ucol.cpp", |
| "source/i18n/ucoleitr.cpp", |
| "source/i18n/ucol_res.cpp", |
| "source/i18n/ucol_sit.cpp", |
| "source/i18n/ucsdet.cpp", |
| "source/i18n/ucurr.cpp", |
| "source/i18n/udat.cpp", |
| "source/i18n/udateintervalformat.cpp", |
| "source/i18n/udatpg.cpp", |
| "source/i18n/ufieldpositer.cpp", |
| "source/i18n/uitercollationiterator.cpp", |
| "source/i18n/ulocdata.c", |
| "source/i18n/umsg.cpp", |
| "source/i18n/unesctrn.cpp", |
| "source/i18n/uni2name.cpp", |
| "source/i18n/unum.cpp", |
| "source/i18n/unumsys.cpp", |
| "source/i18n/upluralrules.cpp", |
| "source/i18n/uregexc.cpp", |
| "source/i18n/uregex.cpp", |
| "source/i18n/uregion.cpp", |
| "source/i18n/usearch.cpp", |
| "source/i18n/uspoof_build.cpp", |
| "source/i18n/uspoof_conf.cpp", |
| "source/i18n/uspoof.cpp", |
| "source/i18n/uspoof_impl.cpp", |
| "source/i18n/uspoof_wsconf.cpp", |
| "source/i18n/utf16collationiterator.cpp", |
| "source/i18n/utf8collationiterator.cpp", |
| "source/i18n/utmscale.c", |
| "source/i18n/utrans.cpp", |
| "source/i18n/valueformatter.cpp", |
| "source/i18n/visibledigits.cpp", |
| "source/i18n/vtzone.cpp", |
| "source/i18n/vzone.cpp", |
| "source/i18n/windtfmt.cpp", |
| "source/i18n/winnmfmt.cpp", |
| "source/i18n/wintzimpl.cpp", |
| "source/i18n/zonemeta.cpp", |
| "source/i18n/zrule.cpp", |
| "source/i18n/ztrans.cpp", |
| ] |
| defines = [ "U_I18N_IMPLEMENTATION" ] |
| deps = [ |
| ":icuuc", |
| ] |
| |
| # ICU uses RTTI, replace the default "no rtti" config. |
| configs -= [ |
| "//build/config/compiler:no_rtti", # ICU uses RTTI. |
| "//build/config/compiler:chromium_code", |
| ] |
| configs += [ |
| "//build/config/compiler:rtti", |
| "//build/config/compiler:no_chromium_code", |
| ] |
| |
| configs += [ ":icu_code" ] |
| public_configs = [ ":icu_config" ] |
| |
| cflags = [] |
| if (is_android || is_linux) { |
| cflags += [ |
| # ICU uses its own deprecated functions. |
| "-Wno-deprecated-declarations", |
| ] |
| } |
| } |
| |
| component("icuuc") { |
| # find source/common -maxdepth 1 ! -type d | egrep '\.(c|cpp)$' |\ |
| # sort | sed 's/^\(.*\)$/ "\1",/' |
| sources = [ |
| "source/common/appendable.cpp", |
| "source/common/bmpset.cpp", |
| "source/common/brkeng.cpp", |
| "source/common/brkiter.cpp", |
| "source/common/bytestream.cpp", |
| "source/common/bytestriebuilder.cpp", |
| "source/common/bytestrie.cpp", |
| "source/common/bytestrieiterator.cpp", |
| "source/common/caniter.cpp", |
| "source/common/chariter.cpp", |
| "source/common/charstr.cpp", |
| "source/common/cmemory.c", |
| "source/common/cstring.c", |
| "source/common/cwchar.c", |
| "source/common/dictbe.cpp", |
| "source/common/dictionarydata.cpp", |
| "source/common/dtintrv.cpp", |
| "source/common/errorcode.cpp", |
| "source/common/filteredbrk.cpp", |
| "source/common/filterednormalizer2.cpp", |
| "source/common/icudataver.c", |
| "source/common/icuplug.cpp", |
| "source/common/listformatter.cpp", |
| "source/common/loadednormalizer2impl.cpp", |
| "source/common/locavailable.cpp", |
| "source/common/locbased.cpp", |
| "source/common/locdispnames.cpp", |
| "source/common/locid.cpp", |
| "source/common/loclikely.cpp", |
| "source/common/locmap.c", |
| "source/common/locresdata.cpp", |
| "source/common/locutil.cpp", |
| "source/common/messagepattern.cpp", |
| "source/common/normalizer2.cpp", |
| "source/common/normalizer2impl.cpp", |
| "source/common/normlzr.cpp", |
| "source/common/parsepos.cpp", |
| "source/common/patternprops.cpp", |
| "source/common/pluralmap.cpp", |
| "source/common/propname.cpp", |
| "source/common/propsvec.c", |
| "source/common/punycode.cpp", |
| "source/common/putil.cpp", |
| "source/common/rbbi.cpp", |
| "source/common/rbbidata.cpp", |
| "source/common/rbbinode.cpp", |
| "source/common/rbbirb.cpp", |
| "source/common/rbbiscan.cpp", |
| "source/common/rbbisetb.cpp", |
| "source/common/rbbistbl.cpp", |
| "source/common/rbbitblb.cpp", |
| "source/common/resbund_cnv.cpp", |
| "source/common/resbund.cpp", |
| "source/common/resource.cpp", |
| "source/common/ruleiter.cpp", |
| "source/common/schriter.cpp", |
| "source/common/serv.cpp", |
| "source/common/servlk.cpp", |
| "source/common/servlkf.cpp", |
| "source/common/servls.cpp", |
| "source/common/servnotf.cpp", |
| "source/common/servrbf.cpp", |
| "source/common/servslkf.cpp", |
| "source/common/sharedobject.cpp", |
| "source/common/simplepatternformatter.cpp", |
| "source/common/stringpiece.cpp", |
| "source/common/stringtriebuilder.cpp", |
| "source/common/uarrsort.c", |
| "source/common/ubidi.c", |
| "source/common/ubidiln.c", |
| "source/common/ubidi_props.c", |
| "source/common/ubidiwrt.c", |
| "source/common/ubrk.cpp", |
| "source/common/ucase.cpp", |
| "source/common/ucasemap.cpp", |
| "source/common/ucasemap_titlecase_brkiter.cpp", |
| "source/common/ucat.c", |
| "source/common/uchar.c", |
| "source/common/ucharstriebuilder.cpp", |
| "source/common/ucharstrie.cpp", |
| "source/common/ucharstrieiterator.cpp", |
| "source/common/uchriter.cpp", |
| "source/common/ucln_cmn.cpp", |
| "source/common/ucmndata.c", |
| "source/common/ucnv2022.cpp", |
| "source/common/ucnv_bld.cpp", |
| "source/common/ucnvbocu.cpp", |
| "source/common/ucnv.c", |
| "source/common/ucnv_cb.c", |
| "source/common/ucnv_cnv.c", |
| "source/common/ucnv_ct.c", |
| "source/common/ucnvdisp.c", |
| "source/common/ucnv_err.c", |
| "source/common/ucnv_ext.cpp", |
| "source/common/ucnvhz.c", |
| "source/common/ucnv_io.cpp", |
| "source/common/ucnvisci.c", |
| "source/common/ucnvlat1.c", |
| "source/common/ucnv_lmb.c", |
| "source/common/ucnvmbcs.cpp", |
| "source/common/ucnvscsu.c", |
| "source/common/ucnvsel.cpp", |
| "source/common/ucnv_set.c", |
| "source/common/ucnv_u16.c", |
| "source/common/ucnv_u32.c", |
| "source/common/ucnv_u7.c", |
| "source/common/ucnv_u8.c", |
| "source/common/ucol_swp.cpp", |
| "source/common/udata.cpp", |
| "source/common/udatamem.c", |
| "source/common/udataswp.c", |
| "source/common/uenum.c", |
| "source/common/uhash.c", |
| "source/common/uhash_us.cpp", |
| "source/common/uidna.cpp", |
| "source/common/uinit.cpp", |
| "source/common/uinvchar.c", |
| "source/common/uiter.cpp", |
| "source/common/ulist.c", |
| "source/common/ulistformatter.cpp", |
| "source/common/uloc.cpp", |
| "source/common/uloc_keytype.cpp", |
| "source/common/uloc_tag.c", |
| "source/common/umapfile.c", |
| "source/common/umath.c", |
| "source/common/umutex.cpp", |
| "source/common/unames.cpp", |
| "source/common/unifiedcache.cpp", |
| "source/common/unifilt.cpp", |
| "source/common/unifunct.cpp", |
| "source/common/uniset_closure.cpp", |
| "source/common/uniset.cpp", |
| "source/common/uniset_props.cpp", |
| "source/common/unisetspan.cpp", |
| "source/common/unistr_case.cpp", |
| "source/common/unistr_case_locale.cpp", |
| "source/common/unistr_cnv.cpp", |
| "source/common/unistr.cpp", |
| "source/common/unistr_props.cpp", |
| "source/common/unistr_titlecase_brkiter.cpp", |
| "source/common/unormcmp.cpp", |
| "source/common/unorm.cpp", |
| "source/common/uobject.cpp", |
| "source/common/uprops.cpp", |
| "source/common/uresbund.cpp", |
| "source/common/ures_cnv.c", |
| "source/common/uresdata.cpp", |
| "source/common/uresource.cpp", |
| "source/common/usc_impl.c", |
| "source/common/uscript.c", |
| "source/common/uscript_props.cpp", |
| "source/common/uset.cpp", |
| "source/common/usetiter.cpp", |
| "source/common/uset_props.cpp", |
| "source/common/ushape.cpp", |
| "source/common/usprep.cpp", |
| "source/common/ustack.cpp", |
| "source/common/ustrcase.cpp", |
| "source/common/ustrcase_locale.cpp", |
| "source/common/ustr_cnv.cpp", |
| "source/common/ustrenum.cpp", |
| "source/common/ustrfmt.c", |
| "source/common/ustring.cpp", |
| "source/common/ustr_titlecase_brkiter.cpp", |
| "source/common/ustrtrns.cpp", |
| "source/common/ustr_wcs.cpp", |
| "source/common/utext.cpp", |
| "source/common/utf_impl.c", |
| "source/common/util.cpp", |
| "source/common/util_props.cpp", |
| "source/common/utrace.c", |
| "source/common/utrie2_builder.cpp", |
| "source/common/utrie2.cpp", |
| "source/common/utrie.cpp", |
| "source/common/uts46.cpp", |
| "source/common/utypes.c", |
| "source/common/uvector.cpp", |
| "source/common/uvectr32.cpp", |
| "source/common/uvectr64.cpp", |
| "source/common/wintz.c", |
| ] |
| defines = [ "U_COMMON_IMPLEMENTATION" ] |
| deps = [ |
| ":icudata", |
| ] |
| |
| configs -= [ |
| "//build/config/compiler:no_rtti", # ICU uses RTTI. |
| "//build/config/compiler:chromium_code", |
| ] |
| configs += [ |
| "//build/config/compiler:rtti", |
| "//build/config/compiler:no_chromium_code", |
| ] |
| configs += [ ":icu_code" ] |
| |
| public_configs = [ ":icu_config" ] |
| |
| if (is_win || icu_use_data_file) { |
| sources += [ "source/stubdata/stubdata.c" ] |
| defines += [ "U_ICUDATAENTRY_IN_COMMON" ] |
| } |
| } |
| |
| if (is_android) { |
| android_assets("icu_assets") { |
| if (icu_use_data_file) { |
| sources = [ "$root_out_dir/icudtl.dat" ] |
| deps = [ ":icudata" ] |
| disable_compression = true |
| } |
| } |
| } |
| |
| # TODO(GYP) support use_system_icu. |
| if (icu_use_data_file) { |
| if (is_ios) { |
| bundle_data("icudata") { |
| sources = [ "common/icudtl.dat" ] |
| outputs = [ "{{bundle_resources_dir}}/{{source_file_part}}" ] |
| } |
| } else { |
| copy("icudata") { |
| if (is_android) { |
| sources = [ |
| "android/icudtl.dat", |
| ] |
| } else { |
| sources = [ |
| "common/icudtl.dat", |
| ] |
| } |
| |
| outputs = [ |
| "$root_out_dir/icudtl.dat", |
| ] |
| |
| data = [ |
| "$root_out_dir/icudtl.dat", |
| ] |
| } |
| } |
| } else { |
| if (is_win) { |
| # On Windows the target DLL is pre-built so just use a copy rule. |
| copy("icudata") { |
| sources = [ |
| "windows/icudt.dll", |
| ] |
| outputs = [ |
| "$root_out_dir/icudt.dll", |
| ] |
| |
| data = [ |
| "$root_out_dir/icudtl.dll", |
| ] |
| } |
| } else { |
| source_set("icudata") { |
| # These are hand-generated, but will do for now. |
| # |
| # TODO(GYP): Gyp has considerations here for QNX and for the host toolchain |
| # that have not been ported over. |
| if (is_linux) { |
| sources = [ |
| "linux/icudtl_dat.S", |
| ] |
| } else if (is_mac) { |
| sources = [ |
| "mac/icudtl_dat.S", |
| ] |
| } else if (is_android) { |
| sources = [ |
| "android/icudtl_dat.S", |
| ] |
| } else { |
| assert(false, "No icu data for this platform") |
| } |
| defines = [ "U_HIDE_DATA_SYMBOL" ] |
| } |
| } |
| } |