1//
2// Copyright (C) 2023 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8//      http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15//
16
17package {
18    default_team: "trendy_team_fwk_thread_network",
19    default_applicable_licenses: ["Android-Apache-2.0"],
20}
21
22filegroup {
23    name: "service-thread-sources",
24    srcs: ["java/**/*.java"],
25}
26
27java_library {
28    name: "service-thread-pre-jarjar",
29    defaults: ["framework-system-server-module-defaults"],
30    sdk_version: "system_server_current",
31    // This is included in service-connectivity which is 30+
32    // TODO (b/293613362): allow APEXes to have service jars with higher min_sdk than the APEX
33    // (service-connectivity is only used on 31+) and use 31 here
34    min_sdk_version: "30",
35    srcs: [":service-thread-sources"],
36    libs: [
37        "framework-connectivity-pre-jarjar",
38        "framework-connectivity-t-pre-jarjar",
39        "framework-location.stubs.module_lib",
40        "framework-wifi",
41        "service-connectivity-pre-jarjar",
42        "ServiceConnectivityResources",
43    ],
44    static_libs: [
45        "modules-utils-shell-command-handler",
46        "net-utils-device-common",
47        "net-utils-device-common-netlink",
48        // The required dependency net-utils-device-common-struct-base is in the classpath via
49        // framework-connectivity
50        "net-utils-device-common-struct",
51        "ot-daemon-aidl-java",
52    ],
53    apex_available: ["com.android.tethering"],
54}
55
56cc_library_shared {
57    name: "libservice-thread-jni",
58    min_sdk_version: "30",
59    cflags: [
60        "-Wall",
61        "-Werror",
62        "-Wno-unused-parameter",
63        "-Wthread-safety",
64    ],
65    srcs: [
66        "jni/**/*.cpp",
67    ],
68    shared_libs: [
69        "libbase",
70        "libcutils",
71        "liblog",
72        "libnativehelper",
73    ],
74    apex_available: ["com.android.tethering"],
75}
76