1// Copyright (C) 2019 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    // See: http://go/android-license-faq
17    // A large-scale-change added 'default_applicable_licenses' to import
18    // all of the 'license_kinds' from "packages_modules_appsearch_license"
19    // to get the below license kinds:
20    //   SPDX-license-identifier-Apache-2.0
21    default_applicable_licenses: ["packages_modules_appsearch_license"],
22}
23
24filegroup {
25    name: "framework-appsearch-sources",
26    defaults: ["framework-sources-module-defaults"],
27    srcs: [
28        ":framework-appsearch-external-sources",
29        ":framework-appsearch-internal-sources",
30    ],
31    visibility: ["//packages/modules/AppSearch:__subpackages__"],
32}
33
34filegroup {
35    name: "framework-appsearch-internal-sources",
36    srcs: [
37        "java/**/*.aidl",
38        "java/**/*.java",
39    ],
40    exclude_srcs: [
41        ":framework-appsearch-external-sources",
42    ],
43    path: "java",
44}
45
46filegroup {
47    name: "framework-appsearch-external-sources",
48    srcs: [
49        "java/external/**/*.aidl",
50        "java/external/**/*.java",
51    ],
52    path: "java/external",
53}
54
55java_sdk_library {
56    name: "framework-appsearch",
57    srcs: [":framework-appsearch-sources"],
58    sdk_version: "module_current",
59    min_sdk_version: "Tiramisu",
60    libs: [
61        "unsupportedappusage",
62    ],
63    static_libs: [
64        // This list must be kept in sync with jarjar.txt
65        "appsearch_flags_java_lib",
66        "modules-utils-preconditions",
67    ],
68    optimize: {
69        enabled: true,
70        optimize: true,
71        shrink: true,
72        proguard_flags_files: ["proguard.flags"],
73    },
74    plugins: [
75        "safeparcel-annotation-processor",
76    ],
77    defaults: ["framework-module-defaults"],
78    permitted_packages: [
79        "android.app.appsearch",
80        "com.android.appsearch.flags",
81    ],
82    jarjar_rules: "jarjar-rules.txt",
83    apex_available: ["com.android.appsearch"],
84    impl_library_visibility: [
85        "//cts/tests/appsearch:__subpackages__",
86        "//packages/modules/AppSearch/service:__subpackages__",
87        "//packages/modules/AppSearch/testing:__subpackages__",
88    ],
89    aconfig_declarations: [
90        "appsearch_aconfig_flags",
91    ],
92}
93