1# © 2021 and later: Unicode, Inc. and others. 2# License & terms of use: http://www.unicode.org/copyright.html 3 4# This file defines Bazel targets for a subset of ICU4C "common" library header and source files. 5# The configuration of dependencies among targets is strongly assisted by the 6# file in depstest that maintains such information, at 7# icu4c/source/test/depstest/dependencies.txt . 8 9load("@rules_cc//cc:defs.bzl", "cc_binary", "cc_library") 10 11package( 12 default_visibility = ["//visibility:public"], 13) 14 15# When compiling code in the `common` dir, the constant 16# `U_COMMON_IMPLEMENTATION` needs to be defined. See 17# https://unicode-org.github.io/icu/userguide/howtouseicu#c-with-your-own-build-system . 18 19# If linker errors occur, then this may be a sign that the dependencies were 20# not specified correctly. Use dependencies.txt in depstest for assistance. See 21# https://stackoverflow.com/q/66111709/2077918 . 22 23cc_library( 24 name = "headers", 25 hdrs = glob([ 26 "unicode/*.h", # public 27 "*.h", # internal 28 ], 29 # Instead of using these checked-in files, our Bazel build process 30 # regenerates them and then uses the new versions. 31 # Same list of .h files as in icu4c/source/data/unidata/clean.sh. 32 exclude = ["norm2_nfc_data.h", "propname_data.h", "*_props_data.h"], 33 ), 34 # We need to add includes in order to preserve existing source files' 35 # include directives that use traditional paths, not paths relative to 36 # Bazel workspace: 37 # https://stackoverflow.com/a/65635893/2077918 38 includes = ["."], 39 local_defines = [ 40 "U_COMMON_IMPLEMENTATION", 41 ], 42) 43 44cc_library( 45 name = "platform", 46 srcs = [ 47 "cmemory.cpp", 48 "uobject.cpp", 49 "cstring.cpp", 50 "cwchar.cpp", 51 "uinvchar.cpp", 52 "charstr.cpp", 53 "unistr.cpp", 54 "appendable.cpp", 55 "stringpiece.cpp", 56 "ustrtrns.cpp", 57 "ustring.cpp", 58 "ustrfmt.cpp", 59 "utf_impl.cpp", 60 "putil.cpp", 61 "ucln_cmn.cpp", 62 "udataswp.cpp", 63 "umath.cpp", 64 "umutex.cpp", 65 "sharedobject.cpp", 66 "utrace.cpp", 67 ], 68 deps = [ 69 ":headers", 70 # omit other deps b/c they are sys symbols 71 ], 72 local_defines = [ 73 "U_COMMON_IMPLEMENTATION", 74 ], 75 linkopts = ["-ldl"], 76) 77 78cc_library( 79 name = "utrie", 80 srcs = ["utrie.cpp"], 81 deps = [":platform"], 82 local_defines = [ 83 "U_COMMON_IMPLEMENTATION", 84 ], 85) 86 87cc_library( 88 name = "utrie2", 89 srcs = ["utrie2.cpp"], 90 deps = [":platform"], 91 local_defines = [ 92 "U_COMMON_IMPLEMENTATION", 93 ], 94) 95 96cc_library( 97 name = "utrie2_builder", 98 srcs = ["utrie2_builder.cpp"], 99 deps = [ 100 ":utrie", 101 ":utrie2", 102 ":platform", 103 ], 104 local_defines = [ 105 "U_COMMON_IMPLEMENTATION", 106 ], 107) 108 109cc_library( 110 name = "ucptrie", 111 srcs = ["ucptrie.cpp"], 112 deps = [":platform"], 113 local_defines = [ 114 "U_COMMON_IMPLEMENTATION", 115 ], 116) 117 118cc_library( 119 name = "umutablecptrie", 120 srcs = ["umutablecptrie.cpp"], 121 deps = [":ucptrie"], 122 local_defines = [ 123 "U_COMMON_IMPLEMENTATION", 124 ], 125) 126 127cc_library( 128 name = "bytestrie", 129 srcs = ["bytestrie.cpp"], 130 deps = [":platform"], 131 local_defines = [ 132 "U_COMMON_IMPLEMENTATION", 133 ], 134) 135 136cc_library( 137 name = "bytestriebuilder", 138 srcs = ["bytestriebuilder.cpp"], 139 deps = [ 140 ":bytestrie", 141 ":stringtriebuilder", 142 ":sort", 143 ], 144 local_defines = [ 145 "U_COMMON_IMPLEMENTATION", 146 ], 147) 148 149cc_library( 150 name = "stringtriebuilder", 151 srcs = ["stringtriebuilder.cpp"], 152 deps = [ 153 ":uhash", 154 ], 155 local_defines = [ 156 "U_COMMON_IMPLEMENTATION", 157 ], 158) 159 160cc_library( 161 name = "uhash", 162 hdrs = [ 163 "uhash.h", 164 ], 165 srcs = [ 166 "uhash.cpp", 167 ], 168 deps = [ 169 ":headers", 170 ], 171 local_defines = [ 172 "U_COMMON_IMPLEMENTATION", 173 ], 174) 175 176cc_library( 177 name = "errorcode", 178 hdrs = [ 179 ], 180 srcs = [ 181 "errorcode.cpp", 182 ], 183 includes = ["."], 184 deps = [ 185 ":platform", 186 ":utypes", 187 ], 188 local_defines = [ 189 "U_COMMON_IMPLEMENTATION", 190 ], 191) 192 193cc_library( 194 name = "utypes", 195 srcs = [ 196 "utypes.cpp", 197 ], 198 includes = ["."], 199 deps = [ 200 ":headers", 201 ], 202 local_defines = [ 203 "U_COMMON_IMPLEMENTATION", 204 ], 205) 206 207cc_library( 208 name = "uniset", 209 srcs = [ 210 "uniset.cpp", 211 "unifilt.cpp", 212 "unisetspan.cpp", 213 "bmpset.cpp", 214 "util.cpp", 215 "unifunct.cpp", 216 "usetiter.cpp", 217 ], 218 includes = ["."], 219 deps = [ 220 ":patternprops", 221 ":uvector", 222 ":headers", 223 ], 224 local_defines = [ 225 "U_COMMON_IMPLEMENTATION", 226 ], 227) 228 229cc_library( 230 name = "patternprops", 231 srcs = [ 232 "patternprops.cpp", 233 ], 234 includes = ["."], 235 deps = [ 236 ":headers", 237 ], 238 local_defines = [ 239 "U_COMMON_IMPLEMENTATION", 240 ], 241) 242 243cc_library( 244 name = "propsvec", 245 srcs = [ 246 "propsvec.cpp", 247 ], 248 includes = ["."], 249 deps = [ 250 ":sort", 251 ":utrie2_builder", 252 ":headers", 253 ], 254 local_defines = [ 255 "U_COMMON_IMPLEMENTATION", 256 ], 257) 258 259cc_library( 260 name = "propname", 261 srcs = [ 262 "propname.cpp", 263 "propname_data.h", 264 ], 265 includes = ["."], 266 deps = [ 267 ":bytestrie", 268 ":headers", 269 ], 270 local_defines = [ 271 "U_COMMON_IMPLEMENTATION", 272 ], 273) 274 275# Note: The cc_library target names "uvector32" and "uvector64" match the 276# dependencies.txt group names, but the filenames are "uvectr32.*"/"uvectr64.*". 277cc_library( 278 name = "uvector32", 279 srcs = [ 280 "uvectr32.cpp", 281 ], 282 includes = ["."], 283 deps = [ 284 ":headers", 285 ":platform", 286 ], 287 local_defines = [ 288 "U_COMMON_IMPLEMENTATION", 289 ], 290) 291 292cc_library( 293 name = "uvector64", 294 srcs = [ 295 "uvectr64.cpp", 296 ], 297 includes = ["."], 298 deps = [ 299 ":headers", 300 ":platform", 301 ], 302 local_defines = [ 303 "U_COMMON_IMPLEMENTATION", 304 ], 305) 306 307cc_library( 308 name = "sort", 309 srcs = [ 310 "uarrsort.cpp", 311 ], 312 includes = ["."], 313 deps = [ 314 ":headers", 315 ], 316 local_defines = [ 317 "U_COMMON_IMPLEMENTATION", 318 ], 319) 320 321cc_library( 322 name = "uvector", 323 srcs = [ 324 "uvector.cpp", 325 ], 326 includes = ["."], 327 deps = [ 328 ":platform", 329 ":sort", 330 ], 331 local_defines = [ 332 "U_COMMON_IMPLEMENTATION", 333 ], 334) 335 336cc_library( 337 name = "breakiterator", 338 srcs = [ 339 "brkiter.cpp", 340 "brkeng.cpp", 341 "dictbe.cpp", 342 "dictionarydata.cpp", 343 "filteredbrk.cpp", 344 "lstmbe.cpp", 345 "mlbe.cpp", 346 "rbbi.cpp", 347 "rbbi_cache.cpp", 348 "rbbidata.cpp", 349 "rbbinode.cpp", 350 "rbbirb.cpp", 351 "rbbiscan.cpp", 352 "rbbisetb.cpp", 353 "rbbistbl.cpp", 354 "rbbitblb.cpp", 355 "ubrk.cpp", 356 ], 357 includes = ["."], 358 deps = [ 359 ":bytestrie", 360 ":headers", 361 ":normlzr", 362 ":resourcebundle", 363 ":schriter", 364 ":service_registration", 365 ":ucharstrie", 366 ":ucharstriebuilder", 367 ":uhash", 368 ":uniset_core", 369 ":uniset_props", 370 ":ustack", 371 ":utext", 372 ":utrie2_builder", 373 ":uvector32", 374 ], 375 local_defines = [ 376 "U_COMMON_IMPLEMENTATION", 377 ], 378) 379 380cc_library( 381 name = "bytesinkutil", 382 srcs = [ 383 "bytesinkutil.cpp", 384 ], 385 includes = ["."], 386 deps = [ 387 ":headers", 388 ":bytestream", 389 ":edits", 390 ], 391 local_defines = [ 392 "U_COMMON_IMPLEMENTATION", 393 ], 394) 395 396cc_library( 397 name = "bytestream", 398 srcs = [ 399 "bytestream.cpp", 400 ], 401 includes = ["."], 402 deps = [ 403 ":headers", 404 ":platform", 405 ], 406 local_defines = [ 407 "U_COMMON_IMPLEMENTATION", 408 ], 409) 410 411cc_library( 412 name = "canonical_iterator", 413 srcs = [ 414 "caniter.cpp", 415 ], 416 deps = [ 417 ":normalizer2", 418 ":usetiter", 419 ], 420 local_defines = [ 421 "U_COMMON_IMPLEMENTATION", 422 ], 423) 424 425cc_library( 426 name = "characterproperties", 427 srcs = [ 428 "characterproperties.cpp", 429 ], 430 includes = ["."], 431 deps = [ 432 ":headers", 433 ":emojiprops", 434 ":ucptrie", 435 ":umutablecptrie", 436 ":uniset_core", 437 ":uprops", 438 ], 439 local_defines = [ 440 "U_COMMON_IMPLEMENTATION", 441 ], 442) 443 444cc_library( 445 name = "chariter", 446 srcs = [ 447 "chariter.cpp", 448 ], 449 includes = ["."], 450 deps = [ 451 ":headers", 452 ":platform", 453 ], 454 local_defines = [ 455 "U_COMMON_IMPLEMENTATION", 456 ], 457) 458 459cc_library( 460 name = "edits", 461 srcs = [ 462 "edits.cpp", 463 ], 464 includes = ["."], 465 deps = [ 466 ":headers", 467 ":icu_utility", 468 ":platform", 469 ], 470 local_defines = [ 471 "U_COMMON_IMPLEMENTATION", 472 ], 473) 474 475cc_library( 476 name = "filterednormalizer2", 477 srcs = [ 478 "filterednormalizer2.cpp", 479 ], 480 includes = ["."], 481 deps = [ 482 ":headers", 483 ":normalizer2", 484 ], 485 local_defines = [ 486 "U_COMMON_IMPLEMENTATION", 487 ], 488) 489 490cc_library( 491 name = "hashtable", 492 srcs = [ 493 "uhash_us.cpp", 494 ], 495 includes = ["."], 496 deps = [ 497 ":headers", 498 ":uhash", 499 ], 500 local_defines = [ 501 "U_COMMON_IMPLEMENTATION", 502 ], 503) 504 505cc_library( 506 name = "icu_utility", 507 srcs = [ 508 "util.cpp", 509 ], 510 includes = ["."], 511 deps = [ 512 ":headers", 513 ":patternprops", 514 ":platform", 515 ], 516 local_defines = [ 517 "U_COMMON_IMPLEMENTATION", 518 ], 519) 520 521cc_library( 522 name = "loadednormalizer2", 523 srcs = [ 524 "loadednormalizer2impl.cpp", 525 ], 526 includes = ["."], 527 deps = [ 528 ":headers", 529 ":normalizer2", 530 ], 531 local_defines = [ 532 "U_COMMON_IMPLEMENTATION", 533 ], 534) 535 536cc_library( 537 name = "locale_display_names", 538 srcs = [ 539 "locdispnames.cpp", 540 ], 541 includes = ["."], 542 deps = [ 543 ":headers", 544 ":locresdata", 545 ], 546 local_defines = [ 547 "U_COMMON_IMPLEMENTATION", 548 ], 549) 550 551cc_library( 552 name = "locresdata", 553 srcs = [ 554 "locresdata.cpp", 555 ], 556 includes = ["."], 557 deps = [ 558 ":headers", 559 ":resourcebundle", 560 ], 561 local_defines = [ 562 "U_COMMON_IMPLEMENTATION", 563 ], 564) 565 566cc_library( 567 name = "normlzr", 568 srcs = [ 569 "normlzr.cpp", 570 ], 571 includes = ["."], 572 deps = [ 573 ":filterednormalizer2", 574 ":headers", 575 ":schriter", 576 ":uniset_props", 577 ], 578 local_defines = [ 579 "U_COMMON_IMPLEMENTATION", 580 ], 581) 582 583cc_library( 584 name = "parsepos", 585 srcs = [ 586 "parsepos.cpp", 587 ], 588 includes = ["."], 589 deps = [ 590 ":headers", 591 ":platform", 592 ], 593 local_defines = [ 594 "U_COMMON_IMPLEMENTATION", 595 ], 596) 597 598cc_library( 599 name = "resourcebundle", 600 srcs = [ 601 "localebuilder.cpp", 602 "locavailable.cpp", 603 "locbased.cpp", 604 "locid.cpp", 605 "loclikely.cpp", 606 "locmap.cpp", 607 "resbund.cpp", 608 "resource.cpp", 609 "uloc.cpp", 610 "uloc_tag.cpp", 611 "uloc_keytype.cpp", 612 "uresbund.cpp", 613 "uresdata.cpp", 614 "wintz.cpp", 615 ], 616 includes = ["."], 617 deps = [ 618 ":bytesinkutil", 619 ":errorcode", 620 ":headers", 621 ":propname", 622 ":sort", 623 ":stringenumeration", 624 ":ucol_swp", 625 ":udata", 626 ":uhash", 627 ":uscript_props", 628 ":uvector", 629 ], 630 local_defines = [ 631 "U_COMMON_IMPLEMENTATION", 632 ], 633) 634 635cc_library( 636 name = "schriter", 637 srcs = [ 638 "schriter.cpp", 639 "uchriter.cpp", 640 ], 641 includes = ["."], 642 deps = [ 643 ":chariter", 644 ":headers", 645 ], 646 local_defines = [ 647 "U_COMMON_IMPLEMENTATION", 648 ], 649) 650 651cc_library( 652 name = "service_registration", 653 srcs = [ 654 "locutil.cpp", 655 "serv.cpp", 656 "servlk.cpp", 657 "servlkf.cpp", 658 "servls.cpp", 659 "servnotf.cpp", 660 "servrbf.cpp", 661 "servslkf.cpp", 662 ], 663 includes = ["."], 664 deps = [ 665 ":hashtable", 666 ":headers", 667 ":locale_display_names", 668 ":resourcebundle", 669 ":uvector", 670 ], 671 local_defines = [ 672 "U_COMMON_IMPLEMENTATION", 673 ], 674) 675 676cc_library( 677 name = "stringenumeration", 678 srcs = [ 679 "uenum.cpp", 680 "ustrenum.cpp", 681 ], 682 includes = ["."], 683 deps = [ 684 ":headers", 685 ":platform", 686 ], 687 local_defines = [ 688 "U_COMMON_IMPLEMENTATION", 689 ], 690) 691 692cc_library( 693 name = "ubidi_props", 694 srcs = [ 695 "ubidi_props.cpp", 696 "ubidi_props_data.h", 697 ], 698 includes = ["."], 699 deps = [ 700 ":headers", 701 ":utrie2", 702 ], 703 local_defines = [ 704 "U_COMMON_IMPLEMENTATION", 705 ], 706) 707 708cc_library( 709 name = "ucase", 710 srcs = [ 711 "ucase.cpp", 712 "ucase_props_data.h", 713 ], 714 includes = ["."], 715 deps = [ 716 ":headers", 717 ":utrie2", 718 ], 719 local_defines = [ 720 "U_COMMON_IMPLEMENTATION", 721 ], 722) 723 724cc_library( 725 name = "uchar", 726 srcs = [ 727 "uchar.cpp", 728 "uchar_props_data.h", 729 ], 730 includes = ["."], 731 deps = [ 732 ":headers", 733 ":utrie2", 734 ], 735 local_defines = [ 736 "U_COMMON_IMPLEMENTATION", 737 ], 738) 739 740cc_library( 741 name = "emojiprops", 742 srcs = [ 743 "emojiprops.cpp", 744 "emojiprops.h", 745 ], 746 includes = ["."], 747 deps = [ 748 ":headers", 749 ":ucharstrie", 750 ":ucharstrieiterator", 751 ":ucptrie", 752 ":udata", 753 ], 754 local_defines = [ 755 "U_COMMON_IMPLEMENTATION", 756 ], 757) 758 759cc_library( 760 name = "ucharstrie", 761 srcs = [ 762 "ucharstrie.cpp", 763 ], 764 includes = ["."], 765 deps = [ 766 ":headers", 767 ":platform", 768 ], 769 local_defines = [ 770 "U_COMMON_IMPLEMENTATION", 771 ], 772) 773 774cc_library( 775 name = "ucharstriebuilder", 776 srcs = [ 777 "ucharstriebuilder.cpp", 778 ], 779 includes = ["."], 780 deps = [ 781 ":headers", 782 ":sort", 783 ":stringtriebuilder", 784 ":ucharstrie", 785 ], 786 local_defines = [ 787 "U_COMMON_IMPLEMENTATION", 788 ], 789) 790 791cc_library( 792 name = "ucharstrieiterator", 793 srcs = [ 794 "ucharstrieiterator.cpp", 795 ], 796 includes = ["."], 797 deps = [ 798 ":headers", 799 ":ucharstrie", 800 ":uvector32", 801 ], 802 local_defines = [ 803 "U_COMMON_IMPLEMENTATION", 804 ], 805) 806 807cc_library( 808 name = "ucol_swp", 809 srcs = [ 810 "ucol_swp.cpp", 811 ], 812 includes = ["."], 813 deps = [ 814 ":headers", 815 ":utrie_swap", 816 ], 817 local_defines = [ 818 "U_COMMON_IMPLEMENTATION", 819 ], 820) 821 822cc_library( 823 name = "udata", 824 srcs = [ 825 "restrace.cpp", 826 "ucmndata.cpp", 827 "udata.cpp", 828 "udatamem.cpp", 829 "umapfile.cpp", 830 ], 831 includes = ["."], 832 deps = [ 833 ":headers", 834 ":icu_utility", 835 ":platform", 836 ":uhash", 837 "//icu4c/source/stubdata", 838 ], 839 local_defines = [ 840 "U_COMMON_IMPLEMENTATION", 841 ], 842) 843 844cc_library( 845 name = "uiter", 846 srcs = [ 847 "uiter.cpp", 848 ], 849 includes = ["."], 850 deps = [ 851 ":headers", 852 ":platform", 853 ], 854 local_defines = [ 855 "U_COMMON_IMPLEMENTATION", 856 ], 857) 858 859cc_library( 860 name = "ulist", 861 srcs = [ 862 "ulist.cpp", 863 ], 864 includes = ["."], 865 deps = [ 866 ":headers", 867 ":platform", 868 ], 869 local_defines = [ 870 "U_COMMON_IMPLEMENTATION", 871 ], 872) 873 874cc_library( 875 name = "unames", 876 srcs = [ 877 "unames.cpp", 878 ], 879 includes = ["."], 880 deps = [ 881 ":headers", 882 ":uchar", 883 ":udata", 884 ], 885 local_defines = [ 886 "U_COMMON_IMPLEMENTATION", 887 ], 888) 889 890cc_library( 891 name = "unifiedcache", 892 srcs = [ 893 "unifiedcache.cpp", 894 ], 895 includes = ["."], 896 deps = [ 897 ":headers", 898 ":platform", 899 ":uhash", 900 ], 901 local_defines = [ 902 "U_COMMON_IMPLEMENTATION", 903 ], 904) 905 906cc_library( 907 name = "uniset_core", 908 srcs = [ 909 "bmpset.cpp", 910 "unifilt.cpp", 911 "unifunct.cpp", 912 "uniset.cpp", 913 "unisetspan.cpp", 914 ], 915 includes = ["."], 916 deps = [ 917 ":headers", 918 ":icu_utility", 919 ":patternprops", 920 ":uvector", 921 ], 922 local_defines = [ 923 "U_COMMON_IMPLEMENTATION", 924 ], 925) 926 927cc_library( 928 name = "uniset_closure", 929 srcs = [ 930 "uniset_closure.cpp", 931 ], 932 includes = ["."], 933 deps = [ 934 ":headers", 935 ":uniset_core", 936 ":unistr_case_locale", 937 ":unistr_titlecase_brkiter", 938 ], 939 local_defines = [ 940 "U_COMMON_IMPLEMENTATION", 941 ], 942) 943 944cc_library( 945 name = "uniset_props", 946 srcs = [ 947 "uniset_props.cpp", 948 "ruleiter.cpp", 949 ], 950 includes = ["."], 951 deps = [ 952 ":characterproperties", 953 ":headers", 954 ":parsepos", 955 ":propname", 956 ":resourcebundle", 957 ":unames", 958 ":uniset_core", 959 ":unistr_case", 960 ":uprops", 961 ], 962 local_defines = [ 963 "U_COMMON_IMPLEMENTATION", 964 ], 965) 966 967cc_library( 968 name = "unistr_case", 969 srcs = [ 970 "unistr_case.cpp", 971 ], 972 includes = ["."], 973 deps = [ 974 ":headers", 975 ":ustring_case", 976 ], 977 local_defines = [ 978 "U_COMMON_IMPLEMENTATION", 979 ], 980) 981 982cc_library( 983 name = "unistr_case_locale", 984 srcs = [ 985 "unistr_case_locale.cpp", 986 ], 987 includes = ["."], 988 deps = [ 989 ":headers", 990 ":unistr_case", 991 ":ustring_case_locale", 992 ], 993 local_defines = [ 994 "U_COMMON_IMPLEMENTATION", 995 ], 996) 997 998cc_library( 999 name = "unistr_titlecase_brkiter", 1000 srcs = [ 1001 "unistr_titlecase_brkiter.cpp", 1002 ], 1003 includes = ["."], 1004 deps = [ 1005 ":headers", 1006 ":ustr_titlecase_brkiter", 1007 ], 1008 local_defines = [ 1009 "U_COMMON_IMPLEMENTATION", 1010 ], 1011) 1012 1013cc_library( 1014 name = "uprops", 1015 srcs = [ 1016 "uprops.cpp", 1017 ], 1018 includes = ["."], 1019 deps = [ 1020 ":headers", 1021 ":emojiprops", 1022 ":loadednormalizer2", 1023 ":normalizer2", 1024 ":ubidi_props", 1025 ":ucase", 1026 ":uchar", 1027 ":unistr_case", 1028 ":ustring_case", 1029 ], 1030 local_defines = [ 1031 "U_COMMON_IMPLEMENTATION", 1032 ], 1033) 1034 1035cc_library( 1036 name = "uscript_props", 1037 srcs = [ 1038 "uscript_props.cpp", 1039 ], 1040 includes = ["."], 1041 deps = [ 1042 ":headers", 1043 ":platform", 1044 ], 1045 local_defines = [ 1046 "U_COMMON_IMPLEMENTATION", 1047 ], 1048) 1049 1050cc_library( 1051 name = "uset", 1052 srcs = [ 1053 "uset.cpp", 1054 ], 1055 includes = ["."], 1056 deps = [ 1057 ":headers", 1058 ":platform", 1059 ":uniset_core", 1060 ], 1061 local_defines = [ 1062 "U_COMMON_IMPLEMENTATION", 1063 ], 1064) 1065 1066cc_library( 1067 name = "uset_props", 1068 srcs = [ 1069 "uset_props.cpp", 1070 ], 1071 includes = ["."], 1072 deps = [ 1073 ":headers", 1074 ":uniset_closure", 1075 ":uniset_core", 1076 ":uniset_props", 1077 ], 1078 local_defines = [ 1079 "U_COMMON_IMPLEMENTATION", 1080 ], 1081) 1082 1083cc_library( 1084 name = "usetiter", 1085 srcs = [ 1086 "usetiter.cpp", 1087 ], 1088 includes = ["."], 1089 deps = [ 1090 ":headers", 1091 ":platform", 1092 ":uniset_core", 1093 ], 1094 local_defines = [ 1095 "U_COMMON_IMPLEMENTATION", 1096 ], 1097) 1098 1099cc_library( 1100 name = "ustack", 1101 srcs = [ 1102 "ustack.cpp", 1103 ], 1104 includes = ["."], 1105 deps = [ 1106 ":headers", 1107 ":uvector", 1108 ], 1109 local_defines = [ 1110 "U_COMMON_IMPLEMENTATION", 1111 ], 1112) 1113 1114cc_library( 1115 name = "ustr_titlecase_brkiter", 1116 srcs = [ 1117 "ustr_titlecase_brkiter.cpp", 1118 ], 1119 includes = ["."], 1120 deps = [ 1121 ":breakiterator", 1122 ":headers", 1123 ":ucase", 1124 ":ustring_case_locale", 1125 ], 1126 local_defines = [ 1127 "U_COMMON_IMPLEMENTATION", 1128 ], 1129) 1130 1131cc_library( 1132 name = "ustring_case", 1133 srcs = [ 1134 "ustrcase.cpp", 1135 ], 1136 includes = ["."], 1137 deps = [ 1138 ":headers", 1139 ":ucase", 1140 ":uchar", 1141 ":edits", 1142 ], 1143 local_defines = [ 1144 "U_COMMON_IMPLEMENTATION", 1145 ], 1146) 1147 1148cc_library( 1149 name = "ustring_case_locale", 1150 srcs = [ 1151 "ustrcase_locale.cpp", 1152 ], 1153 includes = ["."], 1154 deps = [ 1155 ":headers", 1156 ":resourcebundle", 1157 ":ustring_case", 1158 ], 1159 local_defines = [ 1160 "U_COMMON_IMPLEMENTATION", 1161 ], 1162) 1163 1164cc_library( 1165 name = "utext", 1166 srcs = [ 1167 "utext.cpp", 1168 ], 1169 includes = ["."], 1170 deps = [ 1171 ":headers", 1172 ":ucase", 1173 ], 1174 local_defines = [ 1175 "U_COMMON_IMPLEMENTATION", 1176 ], 1177) 1178 1179cc_library( 1180 name = "utrie_swap", 1181 srcs = [ 1182 "utrie_swap.cpp", 1183 ], 1184 includes = ["."], 1185 deps = [ 1186 ":headers", 1187 ":udata", 1188 ], 1189 local_defines = [ 1190 "U_COMMON_IMPLEMENTATION", 1191 ], 1192) 1193 1194# This target depends on a header file that contains NFC/NFD normalization data. 1195# This header file is generated by a script (generate.sh) that invokes the gennorm2 binary. 1196# See the Unicode update change log (changes.txt). 1197cc_library( 1198 name = "normalizer2", 1199 srcs = [ 1200 "norm2_nfc_data.h", # generated by gennorm2 1201 "normalizer2.cpp", 1202 "normalizer2impl.cpp", 1203 ], 1204 includes = ["."], 1205 hdrs = [ 1206 "normalizer2impl.h", 1207 ], 1208 deps = [ 1209 ":headers", 1210 ], 1211 local_defines = [ 1212 "U_COMMON_IMPLEMENTATION", 1213 ], 1214) 1215