• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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    default_visibility: [ ":__pkg__" ],
17    default_applicable_licenses: ["Android-Apache-2.0"],
18}
19
20genrule {
21    name: "statslog-statsd-java-gen",
22    tools: ["stats-log-api-gen"],
23    cmd: "$(location stats-log-api-gen) --java $(out) --module statsd" +
24         " --javaPackage com.android.internal.statsd --javaClass StatsdStatsLog --minApiLevel 30",
25    out: ["com/android/internal/statsd/StatsdStatsLog.java"],
26}
27
28java_library_static {
29    name: "statslog-statsd",
30    srcs: [
31        ":statslog-statsd-java-gen",
32    ],
33    visibility: [
34        "//cts/hostsidetests/statsd/apps:__subpackages__",
35        "//vendor:__subpackages__",
36    ],
37}
38
39filegroup {
40    name: "framework-statsd-sources",
41    defaults: ["framework-sources-module-defaults"],
42    srcs: [
43        "java/**/*.java",
44        ":framework-statsd-aidl-sources",
45        ":statslog-statsd-java-gen",
46    ],
47    visibility: ["//packages/modules/StatsD/framework:__subpackages__"],
48}
49
50java_sdk_library {
51    name: "framework-statsd",
52    defaults: ["framework-module-defaults"],
53    installable: true,
54
55    jarjar_rules: "jarjar-rules.txt",
56
57    srcs: [
58        ":framework-statsd-sources",
59    ],
60
61    libs: [
62        "androidx.annotation_annotation",
63    ],
64
65    static_libs: [
66         "modules-utils-build",
67    ],
68
69    permitted_packages: [
70        "android.app",
71        "android.os",
72        "android.util",
73        // From :statslog-statsd-java-gen
74        "com.android.internal.statsd",
75    ],
76
77    api_packages: [
78        "android.app",
79        "android.os",
80        "android.util",
81    ],
82
83    hostdex: true, // for hiddenapi check
84
85    lint: {
86        strict_updatability_linting: true
87    },
88
89    impl_library_visibility: [
90        "//frameworks/base/apex/statsd/framework/test:__subpackages__",
91        "//packages/modules/StatsD/framework/test:__subpackages__",
92        "//packages/modules/StatsD/service:__subpackages__",
93    ],
94
95    apex_available: [
96        "com.android.os.statsd",
97        "test_com.android.os.statsd",
98    ],
99    min_sdk_version: "30",
100}
101
102java_api_contribution {
103    name: "framework-statsd-public-stubs",
104    api_surface: "public",
105    api_file: "api/current.txt",
106    visibility: [
107        "//build/orchestrator/apis",
108    ],
109}
110
111// JNI library for StatsLog.write
112cc_library_shared {
113    name: "libstats_jni",
114    srcs: ["jni/**/*.cpp"],
115    header_libs: ["libnativehelper_header_only"],
116    shared_libs: [
117        "liblog",  // Has a stable abi - should not be copied into apex.
118        "libstatssocket",
119    ],
120    stl: "libc++_static",
121    cflags: [
122        "-Wall",
123        "-Werror",
124        "-Wextra",
125        "-Wno-unused-parameter",
126    ],
127    apex_available: [
128        "com.android.os.statsd",
129        "test_com.android.os.statsd",
130    ],
131    min_sdk_version: "30",
132    visibility: [
133        "//packages/modules/StatsD/apex:__subpackages__",
134    ],
135}
136