• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright (C) 2008 The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//      http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15//
16// Common definitions.
17//
18
19cc_defaults {
20    name: "libicui18n_defaults",
21    srcs: [
22        "affixpatternparser.cpp",
23        "alphaindex.cpp",
24        "anytrans.cpp",
25        "astro.cpp",
26        "basictz.cpp",
27        "bocsu.cpp",
28        "brktrans.cpp",
29        "buddhcal.cpp",
30        "calendar.cpp",
31        "casetrn.cpp",
32        "cecal.cpp",
33        "chnsecal.cpp",
34        "choicfmt.cpp",
35        "coleitr.cpp",
36        "collationbuilder.cpp",
37        "collationcompare.cpp",
38        "collation.cpp",
39        "collationdatabuilder.cpp",
40        "collationdata.cpp",
41        "collationdatareader.cpp",
42        "collationdatawriter.cpp",
43        "collationfastlatinbuilder.cpp",
44        "collationfastlatin.cpp",
45        "collationfcd.cpp",
46        "collationiterator.cpp",
47        "collationkeys.cpp",
48        "collationroot.cpp",
49        "collationrootelements.cpp",
50        "collationruleparser.cpp",
51        "collationsets.cpp",
52        "collationsettings.cpp",
53        "collationtailoring.cpp",
54        "collationweights.cpp",
55        "coll.cpp",
56        "compactdecimalformat.cpp",
57        "coptccal.cpp",
58        "cpdtrans.cpp",
59        "csdetect.cpp",
60        "csmatch.cpp",
61        "csr2022.cpp",
62        "csrecog.cpp",
63        "csrmbcs.cpp",
64        "csrsbcs.cpp",
65        "csrucode.cpp",
66        "csrutf8.cpp",
67        "curramt.cpp",
68        "currfmt.cpp",
69        "currpinf.cpp",
70        "currunit.cpp",
71        "dangical.cpp",
72        "datefmt.cpp",
73        "dayperiodrules.cpp",
74        "dcfmtsym.cpp",
75        "decContext.cpp",
76        "decfmtst.cpp",
77        "decimalformatpattern.cpp",
78        "decimfmt.cpp",
79        "decimfmtimpl.cpp",
80        "decNumber.cpp",
81        "digitaffix.cpp",
82        "digitaffixesandpadding.cpp",
83        "digitformatter.cpp",
84        "digitgrouping.cpp",
85        "digitinterval.cpp",
86        "digitlst.cpp",
87        "dtfmtsym.cpp",
88        "dtitvfmt.cpp",
89        "dtitvinf.cpp",
90        "dtptngen.cpp",
91        "dtrule.cpp",
92        "esctrn.cpp",
93        "ethpccal.cpp",
94        "fmtable_cnv.cpp",
95        "fmtable.cpp",
96        "format.cpp",
97        "fphdlimp.cpp",
98        "fpositer.cpp",
99        "funcrepl.cpp",
100        "gender.cpp",
101        "gregocal.cpp",
102        "gregoimp.cpp",
103        "hebrwcal.cpp",
104        "indiancal.cpp",
105        "inputext.cpp",
106        "islamcal.cpp",
107        "japancal.cpp",
108        "measfmt.cpp",
109        "measunit.cpp",
110        "measure.cpp",
111        "msgfmt.cpp",
112        "name2uni.cpp",
113        "nfrs.cpp",
114        "nfrule.cpp",
115        "nfsubs.cpp",
116        "nortrans.cpp",
117        "nounit.cpp",
118        "nultrans.cpp",
119        "number_affixutils.cpp",
120        "number_compact.cpp",
121        "number_decimalquantity.cpp",
122        "number_decimfmtprops.cpp",
123        "number_fluent.cpp",
124        "number_formatimpl.cpp",
125        "number_grouping.cpp",
126        "number_integerwidth.cpp",
127        "number_longnames.cpp",
128        "number_modifiers.cpp",
129        "number_notation.cpp",
130        "number_padding.cpp",
131        "number_patternmodifier.cpp",
132        "number_patternstring.cpp",
133        "number_rounding.cpp",
134        "number_scientific.cpp",
135        "number_stringbuilder.cpp",
136        "numfmt.cpp",
137        "numsys.cpp",
138        "olsontz.cpp",
139        "persncal.cpp",
140        "pluralaffix.cpp",
141        "plurfmt.cpp",
142        "plurrule.cpp",
143        "precision.cpp",
144        "quant.cpp",
145        "quantityformatter.cpp",
146        "rbnf.cpp",
147        "rbt.cpp",
148        "rbt_data.cpp",
149        "rbt_pars.cpp",
150        "rbt_rule.cpp",
151        "rbt_set.cpp",
152        "rbtz.cpp",
153        "regexcmp.cpp",
154        "regeximp.cpp",
155        "regexst.cpp",
156        "regextxt.cpp",
157        "region.cpp",
158        "reldatefmt.cpp",
159        "reldtfmt.cpp",
160        "rematch.cpp",
161        "remtrans.cpp",
162        "repattrn.cpp",
163        "rulebasedcollator.cpp",
164        "scientificnumberformatter.cpp",
165        "scriptset.cpp",
166        "search.cpp",
167        "selfmt.cpp",
168        "sharedbreakiterator.cpp",
169        "simpletz.cpp",
170        "smallintformatter.cpp",
171        "smpdtfmt.cpp",
172        "smpdtfst.cpp",
173        "sortkey.cpp",
174        "standardplural.cpp",
175        "strmatch.cpp",
176        "strrepl.cpp",
177        "stsearch.cpp",
178        "taiwncal.cpp",
179        "timezone.cpp",
180        "titletrn.cpp",
181        "tmunit.cpp",
182        "tmutamt.cpp",
183        "tmutfmt.cpp",
184        "tolowtrn.cpp",
185        "toupptrn.cpp",
186        "translit.cpp",
187        "transreg.cpp",
188        "tridpars.cpp",
189        "tzfmt.cpp",
190        "tzgnames.cpp",
191        "tznames.cpp",
192        "tznames_impl.cpp",
193        "tzrule.cpp",
194        "tztrans.cpp",
195        "ucal.cpp",
196        "ucln_in.cpp",
197        "ucol.cpp",
198        "ucoleitr.cpp",
199        "ucol_res.cpp",
200        "ucol_sit.cpp",
201        "ucsdet.cpp",
202        "udat.cpp",
203        "udateintervalformat.cpp",
204        "udatpg.cpp",
205        "ufieldpositer.cpp",
206        "uitercollationiterator.cpp",
207        "ulocdata.cpp",
208        "umsg.cpp",
209        "unesctrn.cpp",
210        "uni2name.cpp",
211        "unum.cpp",
212        "unumsys.cpp",
213        "upluralrules.cpp",
214        "uregexc.cpp",
215        "uregex.cpp",
216        "uregion.cpp",
217        "usearch.cpp",
218        "uspoof_build.cpp",
219        "uspoof_conf.cpp",
220        "uspoof.cpp",
221        "uspoof_impl.cpp",
222        "utf16collationiterator.cpp",
223        "utf8collationiterator.cpp",
224        "utmscale.cpp",
225        "utrans.cpp",
226        "valueformatter.cpp",
227        "windtfmt.cpp",
228        "winnmfmt.cpp",
229        "wintzimpl.cpp",
230        "visibledigits.cpp",
231        "vtzone.cpp",
232        "vzone.cpp",
233        "zonemeta.cpp",
234        "zrule.cpp",
235        "ztrans.cpp",
236    ],
237    cflags: [
238        "-D_REENTRANT",
239        "-DU_I18N_IMPLEMENTATION",
240        "-O3",
241        "-fvisibility=hidden",
242        "-Wall",
243        "-Werror",
244        "-Wno-unused-parameter",
245    ],
246    cppflags: [
247        "-std=c++11",
248    ],
249    rtti: true,
250    export_include_dirs: ["."],
251
252    target: {
253        android: {
254            cflags: [
255                "-DPIC",
256                "-fPIC",
257            ],
258        },
259    },
260}
261
262//
263// Build for the host and target (device).
264//
265cc_library_shared {
266    name: "libicui18n",
267    defaults: ["libicui18n_defaults"],
268    host_supported: true,
269    unique_host_soname: true,
270    shared_libs: ["libicuuc"],
271}
272