1*0e209d39SAndroid Build Coastguard Worker// Copyright (C) 2018 The Android Open Source Project 2*0e209d39SAndroid Build Coastguard Worker// 3*0e209d39SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*0e209d39SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*0e209d39SAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*0e209d39SAndroid Build Coastguard Worker// 7*0e209d39SAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*0e209d39SAndroid Build Coastguard Worker// 9*0e209d39SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*0e209d39SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*0e209d39SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*0e209d39SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*0e209d39SAndroid Build Coastguard Worker// limitations under the License. 14*0e209d39SAndroid Build Coastguard Worker 15*0e209d39SAndroid Build Coastguard Workerpackage { 16*0e209d39SAndroid Build Coastguard Worker default_team: "trendy_team_java_core_libraries", 17*0e209d39SAndroid Build Coastguard Worker // See: http://go/android-license-faq 18*0e209d39SAndroid Build Coastguard Worker // A large-scale-change added 'default_applicable_licenses' to import 19*0e209d39SAndroid Build Coastguard Worker // all of the 'license_kinds' from "external_icu_license" 20*0e209d39SAndroid Build Coastguard Worker // to get the below license kinds: 21*0e209d39SAndroid Build Coastguard Worker // SPDX-license-identifier-Apache-2.0 22*0e209d39SAndroid Build Coastguard Worker // SPDX-license-identifier-BSD 23*0e209d39SAndroid Build Coastguard Worker // SPDX-license-identifier-Unicode-DFS 24*0e209d39SAndroid Build Coastguard Worker default_applicable_licenses: ["external_icu_license"], 25*0e209d39SAndroid Build Coastguard Worker} 26*0e209d39SAndroid Build Coastguard Worker 27*0e209d39SAndroid Build Coastguard Workerndk_library { 28*0e209d39SAndroid Build Coastguard Worker name: "libicu", 29*0e209d39SAndroid Build Coastguard Worker symbol_file: "libicu.map.txt", 30*0e209d39SAndroid Build Coastguard Worker first_version: "31", 31*0e209d39SAndroid Build Coastguard Worker unversioned_until: "current", 32*0e209d39SAndroid Build Coastguard Worker} 33*0e209d39SAndroid Build Coastguard Worker 34*0e209d39SAndroid Build Coastguard Workerndk_headers { 35*0e209d39SAndroid Build Coastguard Worker name: "libicu_ndk_headers", 36*0e209d39SAndroid Build Coastguard Worker from: "ndk_headers", 37*0e209d39SAndroid Build Coastguard Worker to: "", 38*0e209d39SAndroid Build Coastguard Worker srcs: ["ndk_headers/**/*.h"], 39*0e209d39SAndroid Build Coastguard Worker license: ":icu_license", 40*0e209d39SAndroid Build Coastguard Worker} 41*0e209d39SAndroid Build Coastguard Worker 42*0e209d39SAndroid Build Coastguard Workercc_library_shared { 43*0e209d39SAndroid Build Coastguard Worker name: "libicu", 44*0e209d39SAndroid Build Coastguard Worker defaults: ["icu4c_defaults"], 45*0e209d39SAndroid Build Coastguard Worker host_supported: true, 46*0e209d39SAndroid Build Coastguard Worker native_bridge_supported: true, 47*0e209d39SAndroid Build Coastguard Worker export_include_dirs: ["ndk_headers"], 48*0e209d39SAndroid Build Coastguard Worker // The whole implementation comes from the intermediate library libicu_static because 49*0e209d39SAndroid Build Coastguard Worker // ndk_headers/ has symbol name collisions with the headers in libicuuc/libicui18n. 50*0e209d39SAndroid Build Coastguard Worker whole_static_libs: ["libicu_static"], 51*0e209d39SAndroid Build Coastguard Worker shared_libs: [ 52*0e209d39SAndroid Build Coastguard Worker "libicuuc", 53*0e209d39SAndroid Build Coastguard Worker "libicui18n", 54*0e209d39SAndroid Build Coastguard Worker ], 55*0e209d39SAndroid Build Coastguard Worker apex_available: [ 56*0e209d39SAndroid Build Coastguard Worker "com.android.i18n", 57*0e209d39SAndroid Build Coastguard Worker ], 58*0e209d39SAndroid Build Coastguard Worker stubs: { 59*0e209d39SAndroid Build Coastguard Worker symbol_file: "libicu.map.txt", 60*0e209d39SAndroid Build Coastguard Worker versions: ["31"], 61*0e209d39SAndroid Build Coastguard Worker }, 62*0e209d39SAndroid Build Coastguard Worker target: { 63*0e209d39SAndroid Build Coastguard Worker android: { 64*0e209d39SAndroid Build Coastguard Worker version_script: "libicu.map.txt", 65*0e209d39SAndroid Build Coastguard Worker }, 66*0e209d39SAndroid Build Coastguard Worker }, 67*0e209d39SAndroid Build Coastguard Worker} 68*0e209d39SAndroid Build Coastguard Worker 69*0e209d39SAndroid Build Coastguard Workercc_library_shared { 70*0e209d39SAndroid Build Coastguard Worker name: "libicu_cts_stub", 71*0e209d39SAndroid Build Coastguard Worker defaults: ["icu4c_defaults"], 72*0e209d39SAndroid Build Coastguard Worker host_supported: false, 73*0e209d39SAndroid Build Coastguard Worker native_bridge_supported: false, 74*0e209d39SAndroid Build Coastguard Worker installable: false, 75*0e209d39SAndroid Build Coastguard Worker stem: "libicu", 76*0e209d39SAndroid Build Coastguard Worker export_include_dirs: ["cts_headers"], 77*0e209d39SAndroid Build Coastguard Worker // The whole implementation comes from the intermediate library libicu_static because 78*0e209d39SAndroid Build Coastguard Worker // ndk_headers/ has collision with the headers in libicuuc/libicui18n. 79*0e209d39SAndroid Build Coastguard Worker whole_static_libs: ["libicu_static"], 80*0e209d39SAndroid Build Coastguard Worker shared_libs: [ 81*0e209d39SAndroid Build Coastguard Worker "libicuuc_cts_stub", 82*0e209d39SAndroid Build Coastguard Worker "libicui18n_cts_stub", 83*0e209d39SAndroid Build Coastguard Worker ], 84*0e209d39SAndroid Build Coastguard Worker target: { 85*0e209d39SAndroid Build Coastguard Worker android: { 86*0e209d39SAndroid Build Coastguard Worker version_script: "libicu.map.txt", 87*0e209d39SAndroid Build Coastguard Worker }, 88*0e209d39SAndroid Build Coastguard Worker }, 89*0e209d39SAndroid Build Coastguard Worker} 90