// Copyright (C) 2019 The Android Open Source Project // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. package { // See: http://go/android-license-faq // A large-scale-change added 'default_applicable_licenses' to import // all of the 'license_kinds' from "frameworks_base_license" // to get the below license kinds: // SPDX-license-identifier-Apache-2.0 default_applicable_licenses: ["frameworks_base_license"], } // Begin ProtoLog java_library { name: "wm_shell_protolog-groups", srcs: [ "src/com/android/wm/shell/protolog/ShellProtoLogGroup.java", ":protolog-common-src", ], } filegroup { name: "wm_shell-sources", srcs: [ "src/**/*.java", ], path: "src", } filegroup { name: "wm_shell-aidls", srcs: [ "src/**/*.aidl", ], path: "src", } // TODO(b/168581922) protologtool do not support kotlin(*.kt) filegroup { name: "wm_shell-sources-kt", srcs: [ "src/**/*.kt", ], path: "src", } genrule { name: "wm_shell_protolog_src", srcs: [ ":wm_shell_protolog-groups", ":wm_shell-sources", ], tools: ["protologtool"], cmd: "$(location protologtool) transform-protolog-calls " + "--protolog-class com.android.internal.protolog.common.ProtoLog " + "--protolog-impl-class com.android.wm.shell.protolog.ShellProtoLogImpl " + "--protolog-cache-class com.android.wm.shell.protolog.ShellProtoLogCache " + "--loggroups-class com.android.wm.shell.protolog.ShellProtoLogGroup " + "--loggroups-jar $(location :wm_shell_protolog-groups) " + "--output-srcjar $(out) " + "$(locations :wm_shell-sources)", out: ["wm_shell_protolog.srcjar"], } genrule { name: "generate-wm_shell_protolog.json", srcs: [ ":wm_shell_protolog-groups", ":wm_shell-sources", ], tools: ["protologtool"], cmd: "$(location protologtool) generate-viewer-config " + "--protolog-class com.android.internal.protolog.common.ProtoLog " + "--loggroups-class com.android.wm.shell.protolog.ShellProtoLogGroup " + "--loggroups-jar $(location :wm_shell_protolog-groups) " + "--viewer-conf $(out) " + "$(locations :wm_shell-sources)", out: ["wm_shell_protolog.json"], } // End ProtoLog java_library { name: "WindowManager-Shell-proto", srcs: ["proto/*.proto"], proto: { type: "nano", }, } android_library { name: "WindowManager-Shell", srcs: [ ":wm_shell_protolog_src", // TODO(b/168581922) protologtool do not support kotlin(*.kt) ":wm_shell-sources-kt", ":wm_shell-aidls", ], resource_dirs: [ "res", ], java_resources: [ ":generate-wm_shell_protolog.json" ], static_libs: [ "androidx.appcompat_appcompat", "androidx.arch.core_core-runtime", "androidx.dynamicanimation_dynamicanimation", "androidx.recyclerview_recyclerview", "kotlinx-coroutines-android", "kotlinx-coroutines-core", "iconloader_base", "jsr330", "protolog-lib", "WindowManager-Shell-proto", "jsr330", ], kotlincflags: ["-Xjvm-default=enable"], manifest: "AndroidManifest.xml", }