aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2023-07-07 05:11:37 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2023-07-07 05:11:37 +0000
commite2d63f0322aea7d3084f802609aeaeb979550c4c (patch)
tree6e17a58424146f45ae6fb2840e3ee3d5525a2828
parent8b0c99eda09f72a5bbc29c56de9e700d6716d02f (diff)
parent1038050d444f26280553507b4c02f9a771605896 (diff)
downloadjacoco-android14-mainline-uwb-release.tar.gz
Change-Id: Icda6199c66cc595b7d0fb1009f72d7db3c70b262
-rw-r--r--Android.bp88
-rw-r--r--org.jacoco.agent/src/MANIFEST.MF3
-rw-r--r--org.jacoco.core/src/org/jacoco/core/internal/instr/ClassFieldProbeArrayStrategy.java2
-rw-r--r--org.jacoco.core/src/org/jacoco/core/internal/instr/InstrSupport.java3
-rw-r--r--org.jacoco.core/src/org/jacoco/core/internal/instr/InterfaceFieldProbeArrayStrategy.java2
-rw-r--r--org.jacoco.core/src/org/jacoco/core/internal/instr/ProbeInserter.java2
-rw-r--r--org.jacoco.core/src/org/jacoco/core/runtime/LoggerRuntime.java2
-rw-r--r--org.jacoco.core/src/org/jacoco/core/runtime/RuntimeData.java2
8 files changed, 85 insertions, 19 deletions
diff --git a/Android.bp b/Android.bp
index aad52a34..98a9da32 100644
--- a/Android.bp
+++ b/Android.bp
@@ -58,7 +58,9 @@ license {
java_library {
name: "jacocoagent",
+ host_supported: true,
installable: true,
+ manifest: "org.jacoco.agent/src/MANIFEST.MF",
apex_available: [
"//apex_available:anyapex",
@@ -79,12 +81,24 @@ java_library {
// system apps.
// Note: we still may need to update the source code to cut dependencies in
// mandatory jacoco classes.
- exclude_srcs: [
- "org.jacoco.core/src/org/jacoco/core/runtime/ModifiedSystemClassRuntime.java",
- "org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/PreMain.java",
- "org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/CoverageTransformer.java",
- "org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/JmxRegistration.java",
- ],
+ target: {
+ android: {
+ exclude_srcs: [
+ "org.jacoco.core/src/org/jacoco/core/runtime/ModifiedSystemClassRuntime.java",
+ "org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/PreMain.java",
+ "org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/CoverageTransformer.java",
+ "org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/JmxRegistration.java",
+ ],
+ },
+ host: {
+ dist: {
+ targets: [
+ "dist_files",
+ "apps_only",
+ ],
+ },
+ }
+ },
// In order to include Jacoco in core libraries, we cannot depend on
// anything in the bootclasspath (or we would create dependency cycle).
@@ -99,6 +113,12 @@ java_library {
"asm-commons-9.2",
"asm-tree-9.2",
],
+ errorprone: {
+ javacflags: [
+ "-Xep:EqualsHashCode:WARN",
+ "-Xep:ReturnValueIgnored:WARN",
+ ],
+ },
}
// Generates stubs containing the classes that will be referenced by instrumented bytecode.
@@ -127,14 +147,34 @@ java_library_host {
manifest: "org.jacoco.cli/src/MANIFEST.MF",
srcs: [
- "org.jacoco.core/src/**/*.java",
- "org.jacoco.report/src/**/*.java",
"org.jacoco.cli/src/**/*.java",
],
+ static_libs: [
+ "jacoco-report",
+ "jacoco-core",
+ ],
+
+ dist: {
+ targets: [
+ "dist_files",
+ "apps_only",
+ ],
+ },
+
+ // b/267831518: Pin tradefed and dependencies to Java 11.
+ java_version: "11",
+}
+
+java_library_host {
+ name: "jacoco-core",
+
+ srcs: [
+ "org.jacoco.core/src/**/*.java",
+ ],
+
java_resource_dirs: [
"org.jacoco.core/src",
- "org.jacoco.report/src",
],
static_libs: [
@@ -144,10 +184,32 @@ java_library_host {
"args4j-2.0.28",
],
- dist: {
- targets: [
- "dist_files",
- "apps_only",
+ // b/267831518: Pin tradefed and dependencies to Java 11.
+ java_version: "11",
+
+ errorprone: {
+ javacflags: [
+ "-Xep:EqualsHashCode:WARN",
+ "-Xep:ReturnValueIgnored:WARN",
],
},
}
+
+java_library_host {
+ name: "jacoco-report",
+
+ srcs: [
+ "org.jacoco.report/src/**/*.java",
+ ],
+
+ // b/267831518: Pin tradefed and dependencies to Java 11.
+ java_version: "11",
+
+ java_resource_dirs: [
+ "org.jacoco.report/src",
+ ],
+
+ static_libs: [
+ "jacoco-core",
+ ],
+}
diff --git a/org.jacoco.agent/src/MANIFEST.MF b/org.jacoco.agent/src/MANIFEST.MF
new file mode 100644
index 00000000..fb315f3d
--- /dev/null
+++ b/org.jacoco.agent/src/MANIFEST.MF
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Premain-Class: org.jacoco.agent.rt.internal.PreMain
+
diff --git a/org.jacoco.core/src/org/jacoco/core/internal/instr/ClassFieldProbeArrayStrategy.java b/org.jacoco.core/src/org/jacoco/core/internal/instr/ClassFieldProbeArrayStrategy.java
index 7a54b6d8..3e26d1b4 100644
--- a/org.jacoco.core/src/org/jacoco/core/internal/instr/ClassFieldProbeArrayStrategy.java
+++ b/org.jacoco.core/src/org/jacoco/core/internal/instr/ClassFieldProbeArrayStrategy.java
@@ -29,7 +29,7 @@ class ClassFieldProbeArrayStrategy implements IProbeArrayStrategy {
* Frame stack with a single boolean array.
*/
private static final Object[] FRAME_STACK_ARRZ = new Object[] {
- InstrSupport.DATAFIELD_DESC };
+ InstrSupport.DATAFIELD_DESC_UNQUALIFIED };
/**
* Empty frame locals.
diff --git a/org.jacoco.core/src/org/jacoco/core/internal/instr/InstrSupport.java b/org.jacoco.core/src/org/jacoco/core/internal/instr/InstrSupport.java
index c125112d..a805e0ff 100644
--- a/org.jacoco.core/src/org/jacoco/core/internal/instr/InstrSupport.java
+++ b/org.jacoco.core/src/org/jacoco/core/internal/instr/InstrSupport.java
@@ -79,7 +79,8 @@ public final class InstrSupport {
* <code>boolean[]</code>).
*/
// BEGIN android-change
- public static final String DATAFIELD_DESC = "Lorg/jacoco/core/data/IExecutionData;";
+ public static final String DATAFIELD_DESC_UNQUALIFIED = "org/jacoco/core/data/IExecutionData";
+ public static final String DATAFIELD_DESC = "L" + DATAFIELD_DESC_UNQUALIFIED + ";";
// END android-change
// === Init Method ===
diff --git a/org.jacoco.core/src/org/jacoco/core/internal/instr/InterfaceFieldProbeArrayStrategy.java b/org.jacoco.core/src/org/jacoco/core/internal/instr/InterfaceFieldProbeArrayStrategy.java
index decd234c..9c36ba7a 100644
--- a/org.jacoco.core/src/org/jacoco/core/internal/instr/InterfaceFieldProbeArrayStrategy.java
+++ b/org.jacoco.core/src/org/jacoco/core/internal/instr/InterfaceFieldProbeArrayStrategy.java
@@ -29,7 +29,7 @@ class InterfaceFieldProbeArrayStrategy implements IProbeArrayStrategy {
* Frame stack with a single boolean array.
*/
private static final Object[] FRAME_STACK_ARRZ = new Object[] {
- InstrSupport.DATAFIELD_DESC };
+ InstrSupport.DATAFIELD_DESC_UNQUALIFIED };
/**
* Empty frame locals.
diff --git a/org.jacoco.core/src/org/jacoco/core/internal/instr/ProbeInserter.java b/org.jacoco.core/src/org/jacoco/core/internal/instr/ProbeInserter.java
index 20794f60..59dff4bf 100644
--- a/org.jacoco.core/src/org/jacoco/core/internal/instr/ProbeInserter.java
+++ b/org.jacoco.core/src/org/jacoco/core/internal/instr/ProbeInserter.java
@@ -154,7 +154,7 @@ class ProbeInserter extends MethodVisitor implements IProbeInserter {
int pos = 0; // Current variable position
while (idx < nLocal || pos <= variable) {
if (pos == variable) {
- newLocal[newIdx++] = InstrSupport.DATAFIELD_DESC;
+ newLocal[newIdx++] = InstrSupport.DATAFIELD_DESC_UNQUALIFIED;
pos++;
} else {
if (idx < nLocal) {
diff --git a/org.jacoco.core/src/org/jacoco/core/runtime/LoggerRuntime.java b/org.jacoco.core/src/org/jacoco/core/runtime/LoggerRuntime.java
index 1fc2b70f..f877b832 100644
--- a/org.jacoco.core/src/org/jacoco/core/runtime/LoggerRuntime.java
+++ b/org.jacoco.core/src/org/jacoco/core/runtime/LoggerRuntime.java
@@ -145,7 +145,7 @@ public class LoggerRuntime extends AbstractRuntime {
mv.visitInsn(Opcodes.ICONST_0);
mv.visitInsn(Opcodes.AALOAD);
- mv.visitTypeInsn(Opcodes.CHECKCAST, InstrSupport.DATAFIELD_DESC);
+ mv.visitTypeInsn(Opcodes.CHECKCAST, InstrSupport.DATAFIELD_DESC_UNQUALIFIED);
// Stack[0]: [Z
diff --git a/org.jacoco.core/src/org/jacoco/core/runtime/RuntimeData.java b/org.jacoco.core/src/org/jacoco/core/runtime/RuntimeData.java
index 00fb4b07..5be410fe 100644
--- a/org.jacoco.core/src/org/jacoco/core/runtime/RuntimeData.java
+++ b/org.jacoco.core/src/org/jacoco/core/runtime/RuntimeData.java
@@ -271,7 +271,7 @@ public class RuntimeData {
// stack[0]: [Z
- mv.visitTypeInsn(Opcodes.CHECKCAST, InstrSupport.DATAFIELD_DESC);
+ mv.visitTypeInsn(Opcodes.CHECKCAST, InstrSupport.DATAFIELD_DESC_UNQUALIFIED);
}
}