Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5fe2c80e authored by Pablo Gamito's avatar Pablo Gamito
Browse files

Update ProtoLog build rules

ProtoLogTool now has additional parameters to support Perfetto tracing. We also need to generate and include a proto version of the viewer configuration.

Flag: ACONFIG android.tracing.Flags.perfettoProtolog DEVELOPMENT
Test: mp droid && atest FrameworksServicesTests
Bug: 276432490
Change-Id: I26929eed96faae04bec65ae5eaf86afda75cb83c
parent 4d86cafd
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -386,7 +386,7 @@ java_defaults {
        // TODO(b/120066492): remove gps_debug and protolog.conf.json when the build
        // system propagates "required" properly.
        "gps_debug.conf",
        "protolog.conf.json.gz",
        "core.protolog.pb",
        "framework-res",
        // any install dependencies should go into framework-minus-apex-install-dependencies
        // rather than here to avoid bloating incremental build time
+7 −11
Original line number Diff line number Diff line
@@ -527,23 +527,19 @@ filegroup {
    ],
}

// common protolog sources without classes that rely on Android SDK
// PackageManager common
filegroup {
    name: "protolog-common-no-android-src",
    name: "framework-pm-common-shared-srcs",
    srcs: [
        ":protolog-common-src",
    ],
    exclude_srcs: [
        "com/android/internal/protolog/common/ProtoLog.java",
        "com/android/server/pm/pkg/AndroidPackage.java",
        "com/android/server/pm/pkg/AndroidPackageSplit.java",
    ],
}

// PackageManager common
filegroup {
    name: "framework-pm-common-shared-srcs",
    name: "protolog-impl",
    srcs: [
        "com/android/server/pm/pkg/AndroidPackage.java",
        "com/android/server/pm/pkg/AndroidPackageSplit.java",
        "com/android/internal/protolog/ProtoLogImpl.java",
    ],
}

@@ -553,7 +549,7 @@ java_library {
    srcs: [
        "com/android/internal/protolog/ProtoLogImpl.java",
        "com/android/internal/protolog/ProtoLogViewerConfigReader.java",
        ":protolog-common-src",
        ":perfetto_trace_javastream_protos",
    ],
}

+5 −0
Original line number Diff line number Diff line
@@ -199,3 +199,8 @@ filegroup {
    name: "services.core.protolog.json",
    srcs: ["services.core.protolog.json"],
}

filegroup {
    name: "file-core.protolog.pb",
    srcs: ["core.protolog.pb"],
}
+52.8 KiB

File added.

No diff preview for this file type.

+30 −3
Original line number Diff line number Diff line
@@ -82,16 +82,18 @@ filegroup {
genrule {
    name: "wm_shell_protolog_src",
    srcs: [
        ":protolog-impl",
        ":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) " +
        "--viewer-config-file-path /system_ext/etc/wmshell.protolog.pb " +
        "--legacy-viewer-config-file-path /system_ext/etc/wmshell.protolog.json.gz " +
        "--legacy-output-file-path /data/misc/wmtrace/shell_log.winscope " +
        "--output-srcjar $(out) " +
        "$(locations :wm_shell-sources)",
    out: ["wm_shell_protolog.srcjar"],
@@ -108,11 +110,29 @@ genrule {
        "--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) " +
        "--viewer-config-type json " +
        "--viewer-config $(out) " +
        "$(locations :wm_shell-sources)",
    out: ["wm_shell_protolog.json"],
}

genrule {
    name: "gen-wmshell.protolog.pb",
    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-config-type proto " +
        "--viewer-config $(out) " +
        "$(locations :wm_shell-sources)",
    out: ["wmshell.protolog.pb"],
}

genrule {
    name: "protolog.json.gz",
    srcs: [":generate-wm_shell_protolog.json"],
@@ -127,6 +147,13 @@ prebuilt_etc {
    filename_from_src: true,
}

prebuilt_etc {
    name: "wmshell.protolog.pb",
    system_ext_specific: true,
    src: ":gen-wmshell.protolog.pb",
    filename_from_src: true,
}

// End ProtoLog

java_library {
Loading