summaryrefslogtreecommitdiff
path: root/rust/coverage.go
diff options
context:
space:
mode:
author Sam Delmerico <delmerico@google.com> 2023-06-16 10:28:04 -0400
committer Sam Delmerico <delmerico@google.com> 2023-09-15 22:46:56 +0000
commita588d153c85485336e0509f475a4eec653be339b (patch)
treef95a13945dd147c12c7ae5323763b8e14a2172f0 /rust/coverage.go
parentd96a60685a3147d6d6f15daf4a5cad419e737430 (diff)
support sandboxed rust rules
This commit adds support for compiling rust rules inside the sbox sandbox. To compile a rust module with sandboxing enabled, the entry point to the crate must be specified via the `crate_root` property, and all input sources and compile-time data must be specified via the `srcs` and `compile_data` properties. Bug: 286077158 Change-Id: I8c9dc5cf7578037a583b4be2e2f73cf20ffd4408
Diffstat (limited to 'rust/coverage.go')
-rw-r--r--rust/coverage.go6
1 files changed, 5 insertions, 1 deletions
diff --git a/rust/coverage.go b/rust/coverage.go
index 5216d6098..b312194f2 100644
--- a/rust/coverage.go
+++ b/rust/coverage.go
@@ -17,6 +17,7 @@ package rust
import (
"github.com/google/blueprint"
+ "android/soong/android"
"android/soong/cc"
)
@@ -70,7 +71,10 @@ func (cov *coverage) flags(ctx ModuleContext, flags Flags, deps PathDeps) (Flags
// no_std modules are missing libprofiler_builtins which provides coverage, so we need to add it as a dependency.
if rustModule, ok := ctx.Module().(*Module); ok && rustModule.compiler.noStdlibs() {
profiler_builtins := ctx.GetDirectDepWithTag(ProfilerBuiltins, rlibDepTag).(*Module)
- deps.RLibs = append(deps.RLibs, RustLibrary{Path: profiler_builtins.OutputFile().Path(), CrateName: profiler_builtins.CrateName()})
+ deps.Rlibs = android.AddDirectToDepSet[RustLibrary](deps.Rlibs, RustLibrary{
+ Path: profiler_builtins.OutputFile().Path(),
+ CrateName: profiler_builtins.CrateName(),
+ })
}
if cc.EnableContinuousCoverage(ctx) {