]> git.saurik.com Git - apple/icu.git/blob - icuSources/test/depstest/dependencies.txt
ICU-62135.0.1.tar.gz
[apple/icu.git] / icuSources / test / depstest / dependencies.txt
1 # -*- icu-dependencies -*-
2 # Copyright (C) 2016 and later: Unicode, Inc. and others.
3 # License & terms of use: http://www.unicode.org/copyright.html
4 # Copyright (C) 2011-2016, International Business Machines
5 # Corporation and others. All Rights Reserved.
6 #
7 # file name: dependencies.txt
8 #
9 # created on: 2011may26
10 # created by: Markus W. Scherer
11 #
12 # See http://site.icu-project.org/processes/release/tasks/healthy-code#TOC-Check-library-dependencies
13
14 # Standard library symbols used by ICU --------------------------------------- #
15
16 system_symbols:
17 deps
18 # C
19 PIC system_misc system_debug malloc_functions ubsan
20 c_strings c_string_formatting
21 int_functions floating_point trigonometry
22 stdlib_qsort
23 pthread system_locale
24 stdio_input stdio_output file_io readlink_function dir_io mmap_functions dlfcn
25 # C++
26 cplusplus iostream
27
28 group: PIC
29 # Position-Independent Code (-fPIC) requires a Global Offset Table.
30 _GLOBAL_OFFSET_TABLE_
31
32 group: system_misc
33 abort
34
35 group: system_debug
36 __assert_fail __stack_chk_fail
37
38 group: malloc_functions
39 free malloc realloc
40
41 group: ubsan
42 # UBSan=UndefinedBehaviorSanitizer, clang -fsanitize=bounds
43 __ubsan_handle_out_of_bounds
44
45 group: c_strings
46 isspace isdigit
47 __ctype_b_loc # for <ctype.h>
48 # We must not use tolower and toupper because they are system-locale-sensitive (Turkish i).
49 strlen strchr strrchr strstr strcmp strncmp strcpy strncpy strcat strncat
50 memcmp memcpy memmove memset
51 # Additional symbols in an optimized build.
52 __strcpy_chk __strncpy_chk __strcat_chk __strncat_chk
53 __rawmemchr __memcpy_chk __memmove_chk __memset_chk
54
55 group: c_string_formatting
56 atoi atol strtod strtod_l strtol strtoul
57 sprintf snprintf
58 # Additional symbols in an optimized build.
59 __sprintf_chk
60
61 group: int_functions
62 div
63
64 group: floating_point
65 abs fabs floor ceil modf fmod log pow round sqrt trunc
66
67 group: trigonometry
68 acos asin atan atan2 cos sin tan
69 # Additional symbols in an optimized build.
70 sincos
71
72 group: stdlib_qsort
73 qsort
74
75 group: pthread
76 pthread_mutex_init pthread_mutex_destroy pthread_mutex_lock pthread_mutex_unlock
77 pthread_cond_wait pthread_cond_broadcast pthread_cond_signal
78
79 group: system_locale
80 getenv
81 nl_langinfo setlocale newlocale freelocale
82 gettimeofday localtime_r tzname tzset __timezone
83
84 group: stdio_input
85 fopen fclose fgets fread fseek ftell rewind feof fileno
86 # Additional symbols in an optimized build.
87 __fgets_chk __fread_chk
88
89 group: stdio_output
90 fflush fwrite
91 stdout
92
93 group: file_io
94 open close stat
95 # Additional symbols in an optimized build.
96 __xstat
97
98 group: readlink_function
99 readlink # putil.cpp uprv_tzname() calls this in a hack to get the time zone name
100
101 group: dir_io
102 opendir closedir readdir # for a hack to get the time zone name
103
104 group: mmap_functions # for memory-mapped data loading
105 mmap munmap
106
107 group: dlfcn
108 dlopen dlclose dlsym # called by putil.o only for icuplug.o
109
110 group: cplusplus
111 __dynamic_cast
112 # The compiler generates references to the global operator delete
113 # even when no code actually uses it.
114 # ICU must not _use_ the global operator delete.
115 "operator delete(void*)"
116 # ICU also must not use the global operator new.
117 # "operator new[](unsigned long)"
118
119 # _Unwind_Resume is related to exceptions:
120 # "A call to this routine is inserted as the end of a landing pad that performs cleanup,
121 # but does not resume normal execution. It causes unwinding to proceed further."
122 # (Linux Standard Base Specification 1.3)
123 # Even though ICU does not actually use (nor handle) exceptions.
124 _Unwind_Resume
125 # std::terminate() looks similar to _Unwind_Resume:
126 # "Calls the current terminate handler."
127 std::terminate()
128
129 group: iostream
130 "std::basic_ios<char, std::char_traits<char> >::clear(std::_Ios_Iostate)"
131 "std::basic_ios<char, std::char_traits<char> >::eof() const"
132 "std::basic_ios<char, std::char_traits<char> >::fail() const"
133 "std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)"
134 std::ios_base::Init::Init()
135 std::ios_base::Init::~Init()
136 std::istream::get()
137 std::istream::putback(char)
138 # Additional symbols in an optimized build.
139 "std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)"
140
141 # ICU common library --------------------------------------------------------- #
142
143 library: stubdata
144 stubdata.o # Exports icudt48_dat.
145
146 library: common
147 # All files in the common library are listed in its dependencies.
148 deps
149 # Libraries and groups that the common library depends on.
150 pluralmap
151 date_interval
152 breakiterator
153 uts46 filterednormalizer2 normalizer2 loadednormalizer2 canonical_iterator
154 normlzr unormcmp unorm
155 idna2003 stringprep
156 stringenumeration
157 unistr_props unistr_case unistr_case_locale unistr_titlecase_brkiter unistr_cnv
158 cstr
159 uniset_core uniset_props uniset_closure usetiter uset uset_props
160 static_unicode_sets
161 uiter edits
162 ucasemap ucasemap_titlecase_brkiter script_runs
163 uprops ubidi_props ucase uscript uscript_props
164 ubidi ushape ubiditransform
165 listformatter
166 resourcebundle service_registration resbund_cnv ures_cnv icudataver ucat
167 loclikely
168 currency
169 locale_display_names2
170 conversion converter_selector ucnv_set ucnvdisp
171 messagepattern simpleformatter
172 icu_utility icu_utility_with_props
173 ustr_wcs
174 unifiedcache
175 ucharstriebuilder ucharstrieiterator
176 bytestriebuilder bytestrieiterator
177 hashtable uhash uvector uvector32 uvector64 ulist
178 propsvec utrie2 utrie2_builder
179 sort
180 uinit utypes errorcode
181 icuplug
182 platform
183
184 group: pluralmap
185 # TODO: Move to i18n library, ticket #11926.
186 pluralmap.o
187 deps
188 platform
189
190 group: date_interval # class DateInterval
191 dtintrv.o
192 deps
193 platform
194
195 group: breakiterator
196 # We could try to split off a breakiterator_builder group,
197 # but we still need uniset_props for code like in the ThaiBreakEngine constructor
198 # which does
199 # fThaiWordSet.applyPattern(UNICODE_STRING_SIMPLE("[[:Thai:]&[:LineBreak=SA:]]"), status)
200 brkiter.o brkeng.o ubrk.o
201 rbbi.o rbbinode.o rbbiscan.o rbbisetb.o rbbistbl.o rbbitblb.o
202 rbbidata.o rbbirb.o rbbi_cache.o
203 dictionarydata.o dictbe.o
204 # BreakIterator::makeInstance() factory implementation makes for circular dependency
205 # between BreakIterator base and FilteredBreakIteratorBuilder.
206 filteredbrk.o
207 deps
208 resourcebundle service_registration
209 schriter utext uniset_core uniset_props
210 uhash ustack utrie
211 ucharstrie bytestrie
212 ucharstriebuilder # for filteredbrk.o
213 normlzr # for dictbe.o, should switch to Normalizer2
214 uvector32 # for dictbe.o
215
216 group: unormcmp # unorm_compare()
217 unormcmp.o
218 deps
219 filterednormalizer2
220 uniset_props # for uniset_getUnicode32Instance()
221 ucase
222
223 group: unorm # old normalization C API
224 unorm.o
225 deps
226 filterednormalizer2
227 uniset_props # for uniset_getUnicode32Instance()
228 uiter
229
230 group: normlzr # old Normalizer C++ class
231 normlzr.o
232 deps
233 filterednormalizer2
234 uniset_props # for uniset_getUnicode32Instance()
235 schriter
236
237 group: uts46
238 uts46.o
239 deps
240 normalizer2 loadednormalizer2 punycode
241 uchar # for u_charType() (via U_GET_GC_MASK(c))
242 ubidi_props # for u_charDirection() & ubidi_getJoiningType()
243 bytestream
244
245 group: filterednormalizer2
246 filterednormalizer2.o
247 deps
248 normalizer2
249
250 group: idna2003
251 uidna.o
252 deps
253 stringprep punycode
254
255 group: stringprep
256 usprep.o
257 deps
258 unorm # could change to use filterednormalizer2 directly for Unicode 3.2 normalization
259 normalizer2
260 ubidi_props
261
262 group: canonical_iterator
263 caniter.o
264 deps
265 normalizer2 usetiter
266
267 group: loadednormalizer2
268 loadednormalizer2impl.o
269 deps
270 normalizer2
271
272 group: normalizer2
273 normalizer2.o
274 normalizer2impl.o
275 deps
276 uniset_core
277 bytestream bytesinkutil # for UTF-8 output
278 utrie2_builder # for building CanonIterData & FCD
279 uvector # for building CanonIterData
280 uhash # for the instance cache
281 udata
282
283 group: punycode
284 punycode.o
285 deps
286 platform
287
288 group: static_unicode_sets
289 static_unicode_sets.o
290 deps
291 resourcebundle uniset_props
292
293 group: uset_props
294 uset_props.o
295 deps
296 uniset_closure uniset_props uniset_core
297
298 group: uset
299 uset.o
300 deps
301 uniset_core
302
303 group: uniset_closure
304 uniset_closure.o
305 deps
306 uniset_core unistr_case_locale unistr_titlecase_brkiter
307
308 group: uniset_props
309 uniset_props.o ruleiter.o
310 deps
311 uniset_core uprops unistr_case
312 parsepos
313 resourcebundle
314 propname unames
315
316 group: parsepos
317 parsepos.o
318 deps
319 platform
320
321 group: usetiter # UnicodeSetIterator
322 usetiter.o
323 deps
324 uniset_core
325
326 group: uniset_core
327 unifilt.o unifunct.o
328 uniset.o bmpset.o unisetspan.o
329 deps
330 patternprops
331 icu_utility
332 uvector
333
334 group: icu_utility_with_props
335 util_props.o
336 deps
337 icu_utility uchar ucase
338
339 group: icu_utility
340 util.o
341 deps
342 patternprops platform
343
344 group: utext
345 utext.o
346 deps
347 ucase
348
349 group: stringenumeration
350 ustrenum.o uenum.o
351 deps
352 platform
353
354 group: schriter
355 schriter.o
356 # The UCharCharacterIterator implements virtual void getText(UnicodeString& result)
357 # so it depends on UnicodeString, therefore it makes little sense to split
358 # schriter and uchriter into separate groups.
359 uchriter.o
360 deps
361 chariter
362
363 group: chariter
364 chariter.o
365 deps
366 platform
367
368 group: uiter
369 uiter.o
370 deps
371 platform
372
373 group: unistr_cnv
374 unistr_cnv.o
375 deps
376 conversion
377
378 group: cstr
379 cstr.o
380 deps
381 unistr_cnv
382
383 group: uscript
384 uscript.o # uscript_getCode() accepts a locale ID and loads its script code data
385 deps
386 propname loclikely
387
388 group: uscript_props # script metadata properties
389 uscript_props.o
390 deps
391 platform
392
393 group: uprops
394 uprops.o
395 deps
396 normalizer2 loadednormalizer2
397 uchar
398 ubidi_props
399 unistr_case ustring_case # only for case folding
400 ucase
401
402 group: propname
403 propname.o
404 deps
405 bytestrie
406
407 group: unames
408 unames.o
409 deps
410 uchar udata
411
412 group: script_runs
413 usc_impl.o
414 deps
415 uchar
416
417 group: uchar
418 uchar.o
419 deps
420 utrie2
421
422 group: messagepattern # for MessageFormat and tools
423 messagepattern.o
424 deps
425 patternprops platform
426
427 group: simpleformatter
428 simpleformatter.o
429 deps
430 platform
431
432 group: patternprops
433 patternprops.o
434 deps
435 PIC ubsan
436
437 group: ushape
438 ushape.o
439 deps
440 ubidi_props
441
442 group: ubidi
443 ubidi.o ubidiln.o ubidiwrt.o
444 deps
445 ubidi_props
446 uchar # for doWriteReverse() which uses IS_COMBINING(u_charType(c))
447
448 group: ubiditransform
449 ubiditransform.o
450 deps
451 ubidi ushape
452
453 group: ubidi_props
454 ubidi_props.o
455 deps
456 utrie2
457
458 group: unistr_props
459 unistr_props.o
460 deps
461 uchar platform
462
463 group: unistr_case_locale
464 unistr_case_locale.o
465 deps
466 unistr_case ustring_case_locale
467
468 group: unistr_case
469 unistr_case.o
470 deps
471 ustring_case
472
473 group: unistr_titlecase_brkiter
474 unistr_titlecase_brkiter.o
475 deps
476 ustr_titlecase_brkiter
477
478 group: ustr_titlecase_brkiter
479 ustr_titlecase_brkiter.o
480 deps
481 breakiterator
482 ustring_case_locale ucase
483
484 group: edits
485 edits.o
486 deps
487 # Edits::Iterator::toString() calls ICU_Utility::appendNumber()
488 icu_utility
489 platform
490
491 group: ucasemap_titlecase_brkiter
492 ucasemap_titlecase_brkiter.o
493 deps
494 ucasemap breakiterator utext
495 ustr_titlecase_brkiter # ustrcase_getTitleBreakIterator()
496
497 group: ucasemap
498 ucasemap.o
499 deps
500 ustring_case ustring_case_locale
501 bytestream bytesinkutil # for UTF-8 output
502 resourcebundle # uloc_getName() etc.
503
504 group: ustring_case_locale
505 ustrcase_locale.o
506 deps
507 ustring_case
508 resourcebundle # for uloc_getDefault()
509
510 group: ustring_case
511 ustrcase.o
512 deps
513 ucase uchar edits
514
515 group: ucase
516 ucase.o
517 deps
518 utrie2
519
520 group: uinit
521 uinit.o
522 deps
523 ucnv_io icuplug
524
525 group: converter_selector
526 ucnvsel.o
527 deps
528 conversion propsvec utrie2_builder uset ucnv_set
529
530 group: ucnvdisp # ucnv_getDisplayName()
531 ucnvdisp.o
532 deps
533 conversion resourcebundle
534
535 group: ucnv_set # ucnv_getUnicodeSet
536 ucnv_set.o
537 deps
538 uset
539
540 group: conversion
541 ustr_cnv.o
542 ucnv.o ucnv_cnv.o ucnv_bld.o ucnv_cb.o ucnv_err.o
543 ucnv_ct.o
544 ucnvmbcs.o ucnv_ext.o
545 ucnvhz.o ucnvisci.o ucnv_lmb.o ucnv2022.o
546 ucnvlat1.o ucnv_u7.o ucnv_u8.o ucnv_u16.o ucnv_u32.o
547 ucnvbocu.o ucnvscsu.o
548 deps
549 ucnv_io
550
551 group: ucnv_io
552 ucnv_io.o
553 deps
554 sort stringenumeration udata
555
556 group: service_registration
557 serv.o servnotf.o servlkf.o servlk.o servls.o servrbf.o servslkf.o
558 locutil.o
559 deps
560 locale_display_names resourcebundle
561 hashtable uvector
562
563 group: listformatter
564 listformatter.o ulistformatter.o
565 deps
566 resourcebundle simpleformatter
567
568 group: ucat # message-catalog-like API
569 ucat.o
570 deps
571 resourcebundle
572
573 group: locale_display_names
574 locdispnames.o # Locale.getDisplayName()
575 deps
576 locresdata
577
578 group: locale_display_names2
579 locdspnm.o # class LocaleDisplayNames
580 deps
581 resourcebundle currency simpleformatter unistr_titlecase_brkiter uchar
582
583 group: currency
584 ucurr.o
585 deps
586 loclikely resourcebundle ulist ustring_case_locale
587 stdlib_qsort # for ucurr.o (which does not use ICU's uarrsort.o)
588 static_unicode_sets usetiter
589
590 group: icudataver # u_getDataVersion()
591 icudataver.o
592 deps
593 resourcebundle
594
595 group: loclikely
596 loclikely.o
597 deps
598 resourcebundle uscript_props propname
599
600 group: locresdata
601 # This was intended to collect locale functions that load resource bundle data.
602 # See the resourcebundle group about what else loads data.
603 locresdata.o
604 deps
605 resourcebundle
606
607 group: resbund_cnv # paths are Unicode strings
608 resbund_cnv.o
609 deps
610 conversion resourcebundle ures_cnv
611
612 group: ures_cnv # ures_openU, path is a Unicode string
613 ures_cnv.o
614 deps
615 conversion resourcebundle
616
617 group: resourcebundle
618 resource.o resbund.o uresbund.o uresdata.o
619 locavailable.o
620 # uloc_tag.c and uloc_keytype.cpp convert between
621 # old ICU/LDML/CLDR locale IDs and newer BCP 47 IDs.
622 # They use data from resource bundles for some of the mappings.
623 # We might want to generate .h files for that data, to #include rather than load,
624 # to minimize dependencies from this code.
625 # Then we could separate this higher-level locale ID code from the resource bundle code.
626 uloc.o uloc_tag.o uloc_keytype.o
627 # Even basic locid.cpp via Locale constructors and Locale::getDefault()
628 # depend on canonicalization and data loading.
629 # We can probably only disentangle basic locale ID handling from resource bundle code
630 # by hardcoding all of the locale ID data.
631 locid.o locmap.o wintz.o
632 # Do we need class LocaleBased? http://bugs.icu-project.org/trac/ticket/8608
633 locbased.o
634 deps
635 udata ucol_swp
636 sort stringenumeration uhash uvector
637
638 group: udata
639 udata.o ucmndata.o udatamem.o
640 umapfile.o
641 deps
642 uhash platform stubdata
643 file_io mmap_functions
644
645 group: unifiedcache
646 unifiedcache.o
647 deps
648 uhash
649 platform
650
651 group: ucharstriebuilder
652 ucharstriebuilder.o
653 deps
654 ucharstrie stringtriebuilder sort
655
656 group: ucharstrieiterator
657 ucharstrieiterator.o
658 deps
659 ucharstrie uvector32
660
661 group: ucharstrie
662 ucharstrie.o
663 deps
664 platform
665
666 group: bytestriebuilder
667 bytestriebuilder.o
668 deps
669 bytestrie stringtriebuilder sort
670
671 group: bytestrieiterator
672 bytestrieiterator.o
673 deps
674 bytestrie uvector32
675
676 group: bytestrie
677 bytestrie.o
678 deps
679 platform
680
681 group: stringtriebuilder
682 stringtriebuilder.o
683 deps
684 uhash
685
686 group: propsvec
687 propsvec.o
688 deps
689 sort utrie2_builder
690
691 group: utrie2_builder
692 utrie2_builder.o
693 deps
694 platform
695 utrie2
696 utrie # for utrie2_fromUTrie()
697 ucol_swp # for utrie_swap()
698
699 group: utrie2
700 utrie2.o
701 deps
702 platform
703
704 group: utrie # Callers should use utrie2 instead.
705 utrie.o
706 deps
707 platform
708
709 group: hashtable # Maps UnicodeString to value.
710 uhash_us.o
711 deps
712 uhash
713
714 group: uhash
715 uhash.o
716 deps
717 platform
718
719 group: ustack
720 ustack.o
721 deps
722 uvector
723
724 group: uvector
725 uvector.o
726 deps
727 platform
728 sort # for UVector::sort()
729
730 group: uvector32
731 uvectr32.o
732 deps
733 platform
734
735 group: uvector64
736 uvectr64.o
737 deps
738 platform
739
740 group: ulist
741 ulist.o
742 deps
743 platform
744
745 group: sort
746 uarrsort.o
747 deps
748 platform
749
750 group: ustr_wcs
751 ustr_wcs.o
752 deps
753 platform
754
755 group: bytesinkutil
756 bytesinkutil.o
757 deps
758 bytestream edits
759
760 group: bytestream
761 bytestream.o
762 deps
763 platform
764
765 group: icuplug
766 icuplug.o
767 deps
768 platform
769
770 group: ucol_swp
771 ucol_swp.o
772 deps
773 utrie2 # Format version 4 uses UTrie2.
774
775 group: errorcode # ErrorCode base class
776 errorcode.o
777 deps
778 utypes
779 platform
780
781 group: utypes # u_errorName()
782 utypes.o
783 deps
784 ubsan
785
786 group: platform
787 # Files in the "platform" group.
788 cmemory.o uobject.o
789 cstring.o cwchar.o uinvchar.o
790 charstr.o
791 unistr.o # for CharString::appendInvariantChars(const UnicodeString &s, UErrorCode &errorCode)
792 appendable.o stringpiece.o ustrtrns.o # for unistr.o
793 ustring.o # Other platform files really just need u_strlen
794 ustrfmt.o # uprv_itou
795 utf_impl.o
796 putil.o
797 ucln_cmn.o # for putil.o which calls ucln_common_registerCleanup
798 udataswp.o # for uinvchar.o; TODO: move uinvchar.o swapper functions to udataswp.o?
799 umath.o
800 umutex.o sharedobject.o
801 utrace.o
802 deps
803 # The "platform" group has no ICU dependencies.
804 PIC system_misc system_debug malloc_functions ubsan
805 c_strings c_string_formatting
806 floating_point pthread system_locale
807 stdio_input readlink_function dir_io
808 dlfcn # Move related code into icuplug.c?
809 cplusplus
810
811 # ICU i18n library ----------------------------------------------------------- #
812
813 library: i18n
814 deps
815 region localedata genderinfo charset_detector spoof_detection
816 alphabetic_index collation collation_builder string_search
817 dayperiodrules
818 formatting formattable_cnv regex regex_cnv translit
819 double_conversion number_representation numberformatter numberparser
820 universal_time_scale
821 uclean_i18n
822
823 group: region
824 region.o uregion.o
825 deps
826 formatting # Temporary, TODO: Ticket #9982 class Region should use low-level ASCII-integer functions, and probably be moved to the common library.
827 resourcebundle
828 uvector uclean_i18n
829
830 group: localedata
831 ulocdata.o
832 deps
833 uniset_props resourcebundle
834 uset_props # TODO: change to using C++ UnicodeSet, remove this dependency
835 loclikely
836
837 group: genderinfo
838 gender.o
839 deps
840 resourcebundle
841 uclean_i18n
842
843 group: charset_detector
844 csdetect.o csmatch.o csr2022.o csrecog.o csrmbcs.o csrsbcs.o csrucode.o csrutf8.o inputext.o ucsdet.o
845 deps
846 conversion
847 uclean_i18n
848
849 group: spoof_detection
850 uspoof.o uspoof_build.o uspoof_conf.o uspoof_impl.o scriptset.o
851 deps
852 uniset_props regex unorm uscript
853
854 group: alphabetic_index
855 alphaindex.o
856 deps
857 collation localedata
858 uclean_i18n
859
860 group: collation
861 # The collation "runtime" code should not depend on the collation_builder code.
862 # For example, loading from resource bundles does not fall back to
863 # building from rules.
864 collation.o collationcompare.o collationdata.o
865 collationdatareader.o collationdatawriter.o
866 collationfastlatin.o collationfcd.o collationiterator.o collationkeys.o
867 collationroot.o collationrootelements.o collationsets.o
868 collationsettings.o collationtailoring.o rulebasedcollator.o
869 uitercollationiterator.o utf16collationiterator.o utf8collationiterator.o
870 bocsu.o coleitr.o coll.o sortkey.o ucol.o
871 ucol_res.o ucol_sit.o ucoleitr.o
872 deps
873 bytestream normalizer2 resourcebundle service_registration unifiedcache
874 ucharstrieiterator uiter ulist uset usetiter uvector32 uvector64
875 uclean_i18n propname
876
877 group: collation_builder
878 collationbuilder.o collationdatabuilder.o collationfastlatinbuilder.o
879 collationruleparser.o collationweights.o
880 deps
881 canonical_iterator collation ucharstriebuilder uset_props
882
883 group: string_search
884 search.o stsearch.o usearch.o
885 deps
886 breakiterator collation
887
888 group: dayperiodrules
889 dayperiodrules.o
890 deps
891 resourcebundle uclean_i18n
892
893 group: double_conversion
894 double-conversion.o double-conversion-bignum.o double-conversion-bignum-dtoa.o
895 double-conversion-cached-powers.o double-conversion-diy-fp.o
896 double-conversion-fast-dtoa.o double-conversion-strtod.o
897 deps
898 platform
899
900 group: number_representation
901 number_decimalquantity.o number_stringbuilder.o numparse_stringsegment.o number_utils.o
902 deps
903 decnumber double_conversion
904 # for data loading; that could be split off
905 resourcebundle
906 int_functions
907 ucase uniset_core
908
909 group: numberformatter
910 # ICU 60+ NumberFormatter API
911 number_affixutils.o number_asformat.o
912 number_capi.o number_compact.o number_currencysymbols.o
913 number_decimfmtprops.o
914 number_fluent.o number_formatimpl.o
915 number_grouping.o number_integerwidth.o number_longnames.o
916 number_mapper.o number_modifiers.o number_multiplier.o
917 number_notation.o number_padding.o
918 number_patternmodifier.o number_patternstring.o number_rounding.o
919 number_scientific.o number_skeletons.o
920 currpinf.o dcfmtsym.o numsys.o
921 # pluralrules
922 standardplural.o plurrule.o
923 deps
924 decnumber double_conversion formattable format units
925 number_representation
926 uclean_i18n common
927
928 group: numberparser
929 numparse_affixes.o numparse_compositions.o numparse_currency.o
930 numparse_decimal.o numparse_impl.o numparse_parsednumber.o
931 numparse_scientific.o numparse_symbols.o
932 numparse_validators.o
933 deps
934 numberformatter
935
936 group: formatting
937 # TODO: Try to subdivide this ball of wax.
938 # currencyformat
939 curramt.o currfmt.o
940 # pluralrules C API
941 upluralrules.o
942 # decimalformat
943 unumsys.o
944 decimfmt.o compactdecimalformat.o
945 numfmt.o unum.o
946 winnmfmt.o
947 # scientificnumberformatter - would depend on dcfmtsym, so would be circular.
948 scientificnumberformatter.o
949 # rbnf
950 nfrs.o nfrule.o nfsubs.o rbnf.o
951 # measureformat
952 measfmt.o quantityformatter.o
953 # dateformat
954 astro.o buddhcal.o calendar.o cecal.o chnsecal.o coptccal.o dangical.o ethpccal.o
955 gregocal.o gregoimp.o hebrwcal.o indiancal.o islamcal.o japancal.o persncal.o taiwncal.o
956 ucal.o
957 basictz.o olsontz.o rbtz.o simpletz.o timezone.o tzrule.o tztrans.o
958 vtzone.o vzone.o wintzimpl.o zonemeta.o zrule.o ztrans.o
959 tzfmt.o tzgnames.o tznames.o tznames_impl.o
960 datefmt.o dtfmtsym.o dtitvfmt.o dtitvinf.o dtptngen.o dtrule.o reldtfmt.o reldatefmt.o
961 smpdtfmt.o smpdtfst.o udateintervalformat.o udatpg.o windtfmt.o
962 udat.o
963 tmunit.o tmutamt.o tmutfmt.o
964 # messageformat
965 choicfmt.o msgfmt.o plurfmt.o selfmt.o umsg.o
966 deps
967 decnumber formattable format units numberformatter numberparser
968 dayperiodrules
969 collation collation_builder # for rbnf
970 common
971 floating_point # sqrt() for astro.o
972 trigonometry # for astro.o
973 sharedbreakiterator # for reldatefmt.o
974 uclean_i18n
975
976 group: sharedbreakiterator
977 sharedbreakiterator.o
978 deps
979 breakiterator
980
981 group: units
982 measunit.o currunit.o nounit.o
983 deps
984 stringenumeration
985
986 group: decnumber
987 decContext.o decNumber.o
988 deps
989 double_conversion uclean_i18n
990
991 group: formattable
992 fmtable.o
993 measure.o
994 deps
995 decnumber number_representation
996
997 group: formattable_cnv
998 fmtable_cnv.o
999 deps
1000 formattable unistr_cnv conversion
1001
1002 group: format
1003 format.o fphdlimp.o fpositer.o ufieldpositer.o
1004 deps
1005 resourcebundle parsepos uvector32
1006
1007 group: regex_cnv
1008 uregexc.o
1009 deps
1010 regex unistr_cnv
1011
1012 group: regex
1013 regexcmp.o regexst.o regextxt.o regeximp.o rematch.o repattrn.o uregex.o
1014 deps
1015 uniset_closure utext uvector32 uvector64 ustack
1016 breakiterator
1017 uinit # TODO: Really needed?
1018 uclean_i18n
1019
1020 group: translit
1021 anytrans.o brktrans.o casetrn.o cpdtrans.o name2uni.o uni2name.o nortrans.o remtrans.o titletrn.o tolowtrn.o toupptrn.o
1022 esctrn.o unesctrn.o nultrans.o
1023 funcrepl.o quant.o rbt.o rbt_data.o rbt_pars.o rbt_rule.o rbt_set.o strmatch.o strrepl.o translit.o transreg.o tridpars.o utrans.o
1024 deps
1025 common
1026 formatting # for Transliterator::getDisplayName()
1027 uclean_i18n
1028
1029 group: universal_time_scale
1030 utmscale.o
1031 deps
1032 ubsan
1033
1034 group: uclean_i18n
1035 ucln_in.o
1036 deps
1037 platform
1038
1039 # ICU io library ------------------------------------------------------------- #
1040
1041 library: io
1042 deps
1043 ustdio ustream uclean_io
1044
1045 group: ustdio
1046 locbund.o sprintf.o sscanf.o ufile.o ufmt_cmn.o uprintf.o uprntf_p.o uscanf.o uscanf_p.o ustdio.o
1047 deps
1048 formatting conversion translit
1049 uclean_io
1050 stdio_output
1051
1052 group: ustream
1053 ustream.o
1054 deps
1055 unistr_cnv
1056 uchar # for u_isWhitespace()
1057 iostream
1058
1059 group: uclean_io
1060 ucln_io.o
1061 deps
1062 platform