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 "rbbi.cpp", 346 "rbbi_cache.cpp", 347 "rbbidata.cpp", 348 "rbbinode.cpp", 349 "rbbirb.cpp", 350 "rbbiscan.cpp", 351 "rbbisetb.cpp", 352 "rbbistbl.cpp", 353 "rbbitblb.cpp", 354 "ubrk.cpp", 355 ], 356 includes = ["."], 357 deps = [ 358 ":bytestrie", 359 ":headers", 360 ":normlzr", 361 ":resourcebundle", 362 ":schriter", 363 ":service_registration", 364 ":ucharstrie", 365 ":ucharstriebuilder", 366 ":uhash", 367 ":uniset_core", 368 ":uniset_props", 369 ":ustack", 370 ":utext", 371 ":utrie2_builder", 372 ":uvector32", 373 ], 374 local_defines = [ 375 "U_COMMON_IMPLEMENTATION", 376 ], 377) 378 379cc_library( 380 name = "bytesinkutil", 381 srcs = [ 382 "bytesinkutil.cpp", 383 ], 384 includes = ["."], 385 deps = [ 386 ":headers", 387 ":bytestream", 388 ":edits", 389 ], 390 local_defines = [ 391 "U_COMMON_IMPLEMENTATION", 392 ], 393) 394 395cc_library( 396 name = "bytestream", 397 srcs = [ 398 "bytestream.cpp", 399 ], 400 includes = ["."], 401 deps = [ 402 ":headers", 403 ":platform", 404 ], 405 local_defines = [ 406 "U_COMMON_IMPLEMENTATION", 407 ], 408) 409 410cc_library( 411 name = "canonical_iterator", 412 srcs = [ 413 "caniter.cpp", 414 ], 415 deps = [ 416 ":normalizer2", 417 ":usetiter", 418 ], 419 local_defines = [ 420 "U_COMMON_IMPLEMENTATION", 421 ], 422) 423 424cc_library( 425 name = "characterproperties", 426 srcs = [ 427 "characterproperties.cpp", 428 ], 429 includes = ["."], 430 deps = [ 431 ":headers", 432 ":emojiprops", 433 ":ucptrie", 434 ":umutablecptrie", 435 ":uniset_core", 436 ":uprops", 437 ], 438 local_defines = [ 439 "U_COMMON_IMPLEMENTATION", 440 ], 441) 442 443cc_library( 444 name = "chariter", 445 srcs = [ 446 "chariter.cpp", 447 ], 448 includes = ["."], 449 deps = [ 450 ":headers", 451 ":platform", 452 ], 453 local_defines = [ 454 "U_COMMON_IMPLEMENTATION", 455 ], 456) 457 458cc_library( 459 name = "edits", 460 srcs = [ 461 "edits.cpp", 462 ], 463 includes = ["."], 464 deps = [ 465 ":headers", 466 ":icu_utility", 467 ":platform", 468 ], 469 local_defines = [ 470 "U_COMMON_IMPLEMENTATION", 471 ], 472) 473 474cc_library( 475 name = "filterednormalizer2", 476 srcs = [ 477 "filterednormalizer2.cpp", 478 ], 479 includes = ["."], 480 deps = [ 481 ":headers", 482 ":normalizer2", 483 ], 484 local_defines = [ 485 "U_COMMON_IMPLEMENTATION", 486 ], 487) 488 489cc_library( 490 name = "hashtable", 491 srcs = [ 492 "uhash_us.cpp", 493 ], 494 includes = ["."], 495 deps = [ 496 ":headers", 497 ":uhash", 498 ], 499 local_defines = [ 500 "U_COMMON_IMPLEMENTATION", 501 ], 502) 503 504cc_library( 505 name = "icu_utility", 506 srcs = [ 507 "util.cpp", 508 ], 509 includes = ["."], 510 deps = [ 511 ":headers", 512 ":patternprops", 513 ":platform", 514 ], 515 local_defines = [ 516 "U_COMMON_IMPLEMENTATION", 517 ], 518) 519 520cc_library( 521 name = "loadednormalizer2", 522 srcs = [ 523 "loadednormalizer2impl.cpp", 524 ], 525 includes = ["."], 526 deps = [ 527 ":headers", 528 ":normalizer2", 529 ], 530 local_defines = [ 531 "U_COMMON_IMPLEMENTATION", 532 ], 533) 534 535cc_library( 536 name = "locale_display_names", 537 srcs = [ 538 "locdispnames.cpp", 539 ], 540 includes = ["."], 541 deps = [ 542 ":headers", 543 ":locresdata", 544 ], 545 local_defines = [ 546 "U_COMMON_IMPLEMENTATION", 547 ], 548) 549 550cc_library( 551 name = "locresdata", 552 srcs = [ 553 "locresdata.cpp", 554 ], 555 includes = ["."], 556 deps = [ 557 ":headers", 558 ":resourcebundle", 559 ], 560 local_defines = [ 561 "U_COMMON_IMPLEMENTATION", 562 ], 563) 564 565cc_library( 566 name = "normlzr", 567 srcs = [ 568 "normlzr.cpp", 569 ], 570 includes = ["."], 571 deps = [ 572 ":filterednormalizer2", 573 ":headers", 574 ":schriter", 575 ":uniset_props", 576 ], 577 local_defines = [ 578 "U_COMMON_IMPLEMENTATION", 579 ], 580) 581 582cc_library( 583 name = "parsepos", 584 srcs = [ 585 "parsepos.cpp", 586 ], 587 includes = ["."], 588 deps = [ 589 ":headers", 590 ":platform", 591 ], 592 local_defines = [ 593 "U_COMMON_IMPLEMENTATION", 594 ], 595) 596 597cc_library( 598 name = "resourcebundle", 599 srcs = [ 600 "localebuilder.cpp", 601 "locavailable.cpp", 602 "locbased.cpp", 603 "locid.cpp", 604 "loclikely.cpp", 605 "locmap.cpp", 606 "resbund.cpp", 607 "resource.cpp", 608 "uloc.cpp", 609 "uloc_tag.cpp", 610 "uloc_keytype.cpp", 611 "uresbund.cpp", 612 "uresdata.cpp", 613 "wintz.cpp", 614 ], 615 includes = ["."], 616 deps = [ 617 ":bytesinkutil", 618 ":errorcode", 619 ":headers", 620 ":propname", 621 ":sort", 622 ":stringenumeration", 623 ":ucol_swp", 624 ":udata", 625 ":uhash", 626 ":uscript_props", 627 ":uvector", 628 ], 629 local_defines = [ 630 "U_COMMON_IMPLEMENTATION", 631 ], 632) 633 634cc_library( 635 name = "schriter", 636 srcs = [ 637 "schriter.cpp", 638 "uchriter.cpp", 639 ], 640 includes = ["."], 641 deps = [ 642 ":chariter", 643 ":headers", 644 ], 645 local_defines = [ 646 "U_COMMON_IMPLEMENTATION", 647 ], 648) 649 650cc_library( 651 name = "service_registration", 652 srcs = [ 653 "locutil.cpp", 654 "serv.cpp", 655 "servlk.cpp", 656 "servlkf.cpp", 657 "servls.cpp", 658 "servnotf.cpp", 659 "servrbf.cpp", 660 "servslkf.cpp", 661 ], 662 includes = ["."], 663 deps = [ 664 ":hashtable", 665 ":headers", 666 ":locale_display_names", 667 ":resourcebundle", 668 ":uvector", 669 ], 670 local_defines = [ 671 "U_COMMON_IMPLEMENTATION", 672 ], 673) 674 675cc_library( 676 name = "stringenumeration", 677 srcs = [ 678 "uenum.cpp", 679 "ustrenum.cpp", 680 ], 681 includes = ["."], 682 deps = [ 683 ":headers", 684 ":platform", 685 ], 686 local_defines = [ 687 "U_COMMON_IMPLEMENTATION", 688 ], 689) 690 691cc_library( 692 name = "ubidi_props", 693 srcs = [ 694 "ubidi_props.cpp", 695 "ubidi_props_data.h", 696 ], 697 includes = ["."], 698 deps = [ 699 ":headers", 700 ":utrie2", 701 ], 702 local_defines = [ 703 "U_COMMON_IMPLEMENTATION", 704 ], 705) 706 707cc_library( 708 name = "ucase", 709 srcs = [ 710 "ucase.cpp", 711 "ucase_props_data.h", 712 ], 713 includes = ["."], 714 deps = [ 715 ":headers", 716 ":utrie2", 717 ], 718 local_defines = [ 719 "U_COMMON_IMPLEMENTATION", 720 ], 721) 722 723cc_library( 724 name = "uchar", 725 srcs = [ 726 "uchar.cpp", 727 "uchar_props_data.h", 728 ], 729 includes = ["."], 730 deps = [ 731 ":headers", 732 ":utrie2", 733 ], 734 local_defines = [ 735 "U_COMMON_IMPLEMENTATION", 736 ], 737) 738 739cc_library( 740 name = "emojiprops", 741 srcs = [ 742 "emojiprops.cpp", 743 "emojiprops.h", 744 ], 745 includes = ["."], 746 deps = [ 747 ":headers", 748 ":ucharstrie", 749 ":ucharstrieiterator", 750 ":ucptrie", 751 ":udata", 752 ], 753 local_defines = [ 754 "U_COMMON_IMPLEMENTATION", 755 ], 756) 757 758cc_library( 759 name = "ucharstrie", 760 srcs = [ 761 "ucharstrie.cpp", 762 ], 763 includes = ["."], 764 deps = [ 765 ":headers", 766 ":platform", 767 ], 768 local_defines = [ 769 "U_COMMON_IMPLEMENTATION", 770 ], 771) 772 773cc_library( 774 name = "ucharstriebuilder", 775 srcs = [ 776 "ucharstriebuilder.cpp", 777 ], 778 includes = ["."], 779 deps = [ 780 ":headers", 781 ":sort", 782 ":stringtriebuilder", 783 ":ucharstrie", 784 ], 785 local_defines = [ 786 "U_COMMON_IMPLEMENTATION", 787 ], 788) 789 790cc_library( 791 name = "ucharstrieiterator", 792 srcs = [ 793 "ucharstrieiterator.cpp", 794 ], 795 includes = ["."], 796 deps = [ 797 ":headers", 798 ":ucharstrie", 799 ":uvector32", 800 ], 801 local_defines = [ 802 "U_COMMON_IMPLEMENTATION", 803 ], 804) 805 806cc_library( 807 name = "ucol_swp", 808 srcs = [ 809 "ucol_swp.cpp", 810 ], 811 includes = ["."], 812 deps = [ 813 ":headers", 814 ":utrie_swap", 815 ], 816 local_defines = [ 817 "U_COMMON_IMPLEMENTATION", 818 ], 819) 820 821cc_library( 822 name = "udata", 823 srcs = [ 824 "restrace.cpp", 825 "ucmndata.cpp", 826 "udata.cpp", 827 "udatamem.cpp", 828 "umapfile.cpp", 829 ], 830 includes = ["."], 831 deps = [ 832 ":headers", 833 ":icu_utility", 834 ":platform", 835 ":uhash", 836 "//icu4c/source/stubdata", 837 ], 838 local_defines = [ 839 "U_COMMON_IMPLEMENTATION", 840 ], 841) 842 843cc_library( 844 name = "uiter", 845 srcs = [ 846 "uiter.cpp", 847 ], 848 includes = ["."], 849 deps = [ 850 ":headers", 851 ":platform", 852 ], 853 local_defines = [ 854 "U_COMMON_IMPLEMENTATION", 855 ], 856) 857 858cc_library( 859 name = "ulist", 860 srcs = [ 861 "ulist.cpp", 862 ], 863 includes = ["."], 864 deps = [ 865 ":headers", 866 ":platform", 867 ], 868 local_defines = [ 869 "U_COMMON_IMPLEMENTATION", 870 ], 871) 872 873cc_library( 874 name = "unames", 875 srcs = [ 876 "unames.cpp", 877 ], 878 includes = ["."], 879 deps = [ 880 ":headers", 881 ":uchar", 882 ":udata", 883 ], 884 local_defines = [ 885 "U_COMMON_IMPLEMENTATION", 886 ], 887) 888 889cc_library( 890 name = "unifiedcache", 891 srcs = [ 892 "unifiedcache.cpp", 893 ], 894 includes = ["."], 895 deps = [ 896 ":headers", 897 ":platform", 898 ":uhash", 899 ], 900 local_defines = [ 901 "U_COMMON_IMPLEMENTATION", 902 ], 903) 904 905cc_library( 906 name = "uniset_core", 907 srcs = [ 908 "bmpset.cpp", 909 "unifilt.cpp", 910 "unifunct.cpp", 911 "uniset.cpp", 912 "unisetspan.cpp", 913 ], 914 includes = ["."], 915 deps = [ 916 ":headers", 917 ":icu_utility", 918 ":patternprops", 919 ":uvector", 920 ], 921 local_defines = [ 922 "U_COMMON_IMPLEMENTATION", 923 ], 924) 925 926cc_library( 927 name = "uniset_closure", 928 srcs = [ 929 "uniset_closure.cpp", 930 ], 931 includes = ["."], 932 deps = [ 933 ":headers", 934 ":uniset_core", 935 ":unistr_case_locale", 936 ":unistr_titlecase_brkiter", 937 ], 938 local_defines = [ 939 "U_COMMON_IMPLEMENTATION", 940 ], 941) 942 943cc_library( 944 name = "uniset_props", 945 srcs = [ 946 "uniset_props.cpp", 947 "ruleiter.cpp", 948 ], 949 includes = ["."], 950 deps = [ 951 ":characterproperties", 952 ":headers", 953 ":parsepos", 954 ":propname", 955 ":resourcebundle", 956 ":unames", 957 ":uniset_core", 958 ":unistr_case", 959 ":uprops", 960 ], 961 local_defines = [ 962 "U_COMMON_IMPLEMENTATION", 963 ], 964) 965 966cc_library( 967 name = "unistr_case", 968 srcs = [ 969 "unistr_case.cpp", 970 ], 971 includes = ["."], 972 deps = [ 973 ":headers", 974 ":ustring_case", 975 ], 976 local_defines = [ 977 "U_COMMON_IMPLEMENTATION", 978 ], 979) 980 981cc_library( 982 name = "unistr_case_locale", 983 srcs = [ 984 "unistr_case_locale.cpp", 985 ], 986 includes = ["."], 987 deps = [ 988 ":headers", 989 ":unistr_case", 990 ":ustring_case_locale", 991 ], 992 local_defines = [ 993 "U_COMMON_IMPLEMENTATION", 994 ], 995) 996 997cc_library( 998 name = "unistr_titlecase_brkiter", 999 srcs = [ 1000 "unistr_titlecase_brkiter.cpp", 1001 ], 1002 includes = ["."], 1003 deps = [ 1004 ":headers", 1005 ":ustr_titlecase_brkiter", 1006 ], 1007 local_defines = [ 1008 "U_COMMON_IMPLEMENTATION", 1009 ], 1010) 1011 1012cc_library( 1013 name = "uprops", 1014 srcs = [ 1015 "uprops.cpp", 1016 ], 1017 includes = ["."], 1018 deps = [ 1019 ":headers", 1020 ":emojiprops", 1021 ":loadednormalizer2", 1022 ":normalizer2", 1023 ":ubidi_props", 1024 ":ucase", 1025 ":uchar", 1026 ":unistr_case", 1027 ":ustring_case", 1028 ], 1029 local_defines = [ 1030 "U_COMMON_IMPLEMENTATION", 1031 ], 1032) 1033 1034cc_library( 1035 name = "uscript_props", 1036 srcs = [ 1037 "uscript_props.cpp", 1038 ], 1039 includes = ["."], 1040 deps = [ 1041 ":headers", 1042 ":platform", 1043 ], 1044 local_defines = [ 1045 "U_COMMON_IMPLEMENTATION", 1046 ], 1047) 1048 1049cc_library( 1050 name = "uset", 1051 srcs = [ 1052 "uset.cpp", 1053 ], 1054 includes = ["."], 1055 deps = [ 1056 ":headers", 1057 ":platform", 1058 ":uniset_core", 1059 ], 1060 local_defines = [ 1061 "U_COMMON_IMPLEMENTATION", 1062 ], 1063) 1064 1065cc_library( 1066 name = "uset_props", 1067 srcs = [ 1068 "uset_props.cpp", 1069 ], 1070 includes = ["."], 1071 deps = [ 1072 ":headers", 1073 ":uniset_closure", 1074 ":uniset_core", 1075 ":uniset_props", 1076 ], 1077 local_defines = [ 1078 "U_COMMON_IMPLEMENTATION", 1079 ], 1080) 1081 1082cc_library( 1083 name = "usetiter", 1084 srcs = [ 1085 "usetiter.cpp", 1086 ], 1087 includes = ["."], 1088 deps = [ 1089 ":headers", 1090 ":platform", 1091 ":uniset_core", 1092 ], 1093 local_defines = [ 1094 "U_COMMON_IMPLEMENTATION", 1095 ], 1096) 1097 1098cc_library( 1099 name = "ustack", 1100 srcs = [ 1101 "ustack.cpp", 1102 ], 1103 includes = ["."], 1104 deps = [ 1105 ":headers", 1106 ":uvector", 1107 ], 1108 local_defines = [ 1109 "U_COMMON_IMPLEMENTATION", 1110 ], 1111) 1112 1113cc_library( 1114 name = "ustr_titlecase_brkiter", 1115 srcs = [ 1116 "ustr_titlecase_brkiter.cpp", 1117 ], 1118 includes = ["."], 1119 deps = [ 1120 ":breakiterator", 1121 ":headers", 1122 ":ucase", 1123 ":ustring_case_locale", 1124 ], 1125 local_defines = [ 1126 "U_COMMON_IMPLEMENTATION", 1127 ], 1128) 1129 1130cc_library( 1131 name = "ustring_case", 1132 srcs = [ 1133 "ustrcase.cpp", 1134 ], 1135 includes = ["."], 1136 deps = [ 1137 ":headers", 1138 ":ucase", 1139 ":uchar", 1140 ":edits", 1141 ], 1142 local_defines = [ 1143 "U_COMMON_IMPLEMENTATION", 1144 ], 1145) 1146 1147cc_library( 1148 name = "ustring_case_locale", 1149 srcs = [ 1150 "ustrcase_locale.cpp", 1151 ], 1152 includes = ["."], 1153 deps = [ 1154 ":headers", 1155 ":resourcebundle", 1156 ":ustring_case", 1157 ], 1158 local_defines = [ 1159 "U_COMMON_IMPLEMENTATION", 1160 ], 1161) 1162 1163cc_library( 1164 name = "utext", 1165 srcs = [ 1166 "utext.cpp", 1167 ], 1168 includes = ["."], 1169 deps = [ 1170 ":headers", 1171 ":ucase", 1172 ], 1173 local_defines = [ 1174 "U_COMMON_IMPLEMENTATION", 1175 ], 1176) 1177 1178cc_library( 1179 name = "utrie_swap", 1180 srcs = [ 1181 "utrie_swap.cpp", 1182 ], 1183 includes = ["."], 1184 deps = [ 1185 ":headers", 1186 ":udata", 1187 ], 1188 local_defines = [ 1189 "U_COMMON_IMPLEMENTATION", 1190 ], 1191) 1192 1193# This target depends on a header file that contains NFC/NFD normalization data. 1194# This header file is generated by a script (generate.sh) that invokes the gennorm2 binary. 1195# See the Unicode update change log (changes.txt). 1196cc_library( 1197 name = "normalizer2", 1198 srcs = [ 1199 "norm2_nfc_data.h", # generated by gennorm2 1200 "normalizer2.cpp", 1201 "normalizer2impl.cpp", 1202 ], 1203 includes = ["."], 1204 hdrs = [ 1205 "normalizer2impl.h", 1206 ], 1207 deps = [ 1208 ":headers", 1209 ], 1210 local_defines = [ 1211 "U_COMMON_IMPLEMENTATION", 1212 ], 1213) 1214