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_applicable_licenses: ["external_icu_license"], 17} 18 19// Added automatically by a large-scale-change that took the approach of 20// 'apply every license found to every target'. While this makes sure we respect 21// every license restriction, it may not be entirely correct. 22// 23// e.g. GPL in an MIT project might only apply to the contrib/ directory. 24// 25// Please consider splitting the single license below into multiple licenses, 26// taking care not to lose any license_kind information, and overriding the 27// default license using the 'licenses: [...]' property on targets as needed. 28// 29// For unused files, consider creating a 'fileGroup' with "//visibility:private" 30// to attach the license to, and including a comment whether the files may be 31// used in the current project. 32// See: http://go/android-license-faq 33license { 34 name: "external_icu_license", 35 visibility: [":__subpackages__"], 36 license_kinds: [ 37 "SPDX-license-identifier-Apache-2.0", 38 "SPDX-license-identifier-BSD", 39 "SPDX-license-identifier-EPL", 40 "SPDX-license-identifier-ICU", 41 "SPDX-license-identifier-ISC", 42 "SPDX-license-identifier-MIT", 43 "SPDX-license-identifier-Unicode-DFS", 44 "legacy_unencumbered", 45 ], 46 license_text: [ 47 "NOTICE", 48 ], 49} 50 51filegroup { 52 name: "icu_license", 53 visibility: [ 54 "//external/icu:__subpackages__", 55 ], 56 path: "NOTICE", 57 srcs: ["NOTICE"], 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-unused-parameter", 67 "-Wno-unused-const-variable", 68 "-Wno-unneeded-internal-declaration", 69 "-Wno-deprecated-declarations", 70 "-Wno-ignored-attributes", 71 ], 72 // Upstream requires C++11 as the minimum version. 73 cppflags: [ 74 "-std=c++11", 75 ], 76 target: { 77 android: { 78 cflags: [ 79 // Require this flag to compile against libicuuc and libicui18n 80 "-DANDROID_LINK_SHARED_ICU4C", 81 ], 82 }, 83 // Windows build required by layoutlib 84 windows: { 85 enabled: true, 86 }, 87 }, 88} 89