1// Copyright (C) 2020 The Android Open Source Project 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15package { 16 default_team: "trendy_team_java_core_libraries", 17 default_applicable_licenses: ["external_icu_license"], 18} 19 20// Added automatically by a large-scale-change that took the approach of 21// 'apply every license found to every target'. While this makes sure we respect 22// every license restriction, it may not be entirely correct. 23// 24// e.g. GPL in an MIT project might only apply to the contrib/ directory. 25// 26// Please consider splitting the single license below into multiple licenses, 27// taking care not to lose any license_kind information, and overriding the 28// default license using the 'licenses: [...]' property on targets as needed. 29// 30// For unused files, consider creating a 'fileGroup' with "//visibility:private" 31// to attach the license to, and including a comment whether the files may be 32// used in the current project. 33// See: http://go/android-license-faq 34license { 35 name: "external_icu_license", 36 visibility: [":__subpackages__"], 37 license_kinds: [ 38 "SPDX-license-identifier-Apache-2.0", 39 "SPDX-license-identifier-BSD", 40 "SPDX-license-identifier-EPL", 41 "SPDX-license-identifier-ICU", 42 "SPDX-license-identifier-ISC", 43 "SPDX-license-identifier-MIT", 44 "SPDX-license-identifier-Unicode-3.0", 45 "legacy_unencumbered", 46 ], 47 license_text: [ 48 "LICENSE", 49 ], 50} 51 52filegroup { 53 name: "icu_license", 54 visibility: [ 55 "//external/icu:__subpackages__", 56 ], 57 srcs: ["LICENSE"], 58} 59 60cc_defaults { 61 name: "icu4c_defaults", 62 cflags: [ 63 "-Wall", 64 "-Werror", 65 // Make all warnings into errors, but ignore a set of warnings used in headers by default. 66 "-Wno-ambiguous-reversed-operator", 67 "-Wno-deprecated-declarations", 68 "-Wno-unused-parameter", 69 "-Wno-unused-const-variable", 70 "-Wno-unneeded-internal-declaration", 71 "-DUCONFIG_USE_ML_PHRASE_BREAKING=1", 72 ], 73 target: { 74 android: { 75 cflags: [ 76 // Require this flag to compile against libicuuc and libicui18n 77 "-DANDROID_LINK_SHARED_ICU4C", 78 ], 79 }, 80 // Windows build required by layoutlib 81 windows: { 82 enabled: true, 83 }, 84 }, 85} 86 87aconfig_declarations { 88 name: "icu_aconfig_flags", 89 package: "com.android.icu", 90 container: "system", 91 srcs: [ 92 "icu.aconfig", 93 ], 94} 95 96java_aconfig_library { 97 name: "icu_aconfig_flags_lib", 98 aconfig_declarations: "icu_aconfig_flags", 99 host_supported: true, 100 // "fake_device_config" is needed for the host. 101 libs: [ 102 "fake_device_config", 103 "aconfig-annotations-lib-sdk-none", 104 "aconfig_storage_stub_none", 105 "unsupportedappusage-sdk-none", 106 ], 107 apex_available: [ 108 "//apex_available:platform", 109 "com.android.i18n", 110 ], 111 sdk_version: "none", 112 system_modules: "core-all-system-modules", 113} 114