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