• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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