1// Copyright (C) 2023 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_fwk_core_networking",
17    default_applicable_licenses: ["Android-Apache-2.0"],
18}
19
20filegroup {
21    name: "remoteauth-service-srcs",
22    srcs: [],
23}
24
25// Main lib for remoteauth services.
26java_library {
27    name: "service-remoteauth-pre-jarjar",
28    srcs: [":remoteauth-service-srcs"],
29    required: ["libremoteauth_jni_rust"],
30    defaults: [
31        "enable-remoteauth-targets",
32        "framework-system-server-module-defaults",
33    ],
34    libs: [
35        "androidx.annotation_annotation",
36        "framework-bluetooth",
37        "framework-connectivity",
38        "error_prone_annotations",
39        "framework-configinfrastructure",
40        "framework-connectivity-pre-jarjar",
41        "framework-connectivity-t-pre-jarjar",
42        "framework-statsd",
43    ],
44    static_libs: [
45        "modules-utils-build",
46        "modules-utils-handlerexecutor",
47        "modules-utils-preconditions",
48        "modules-utils-backgroundthread",
49        "uwb_androidx_backend",
50    ],
51    sdk_version: "system_server_current",
52    // This is included in service-connectivity which is 30+
53    // TODO (b/293613362): allow APEXes to have service jars with higher min_sdk than the APEX
54    // (service-connectivity is only used on 31+) and use 31 here
55    min_sdk_version: "30",
56
57    dex_preopt: {
58        enabled: false,
59        app_image: false,
60    },
61    visibility: [
62        "//packages/modules/RemoteAuth/apex",
63    ],
64    apex_available: [
65        "com.android.tethering",
66    ],
67}
68
69genrule {
70    name: "statslog-remoteauth-java-gen",
71    tools: ["stats-log-api-gen"],
72    cmd: "$(location stats-log-api-gen) --java $(out) --module remoteauth " +
73        " --javaPackage com.android.server.remoteauth.proto --javaClass RemoteAuthStatsLog" +
74        " --minApiLevel 33",
75    out: ["com/android/server/remoteauth/proto/RemoteAuthStatsLog.java"],
76}
77