diff options
author | 2025-01-23 20:58:32 +0000 | |
---|---|---|
committer | 2025-01-23 20:59:28 +0000 | |
commit | 727204cbdf8295b93084db6b05d3f2beb4a661f6 (patch) | |
tree | c053527fa0c6031876dab86c08086ef447173376 /rust/test.go | |
parent | 4d78e0108b85354098811ec86307cc8d2550555f (diff) |
Convert rust to use ModuleProxy.
Bug: 377723687
Test: Unit tests and compare the ninja and mk files generated.
Change-Id: I2eb0134bb727f5875d579dae1fff5b70658bd2bb
Diffstat (limited to 'rust/test.go')
-rw-r--r-- | rust/test.go | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/rust/test.go b/rust/test.go index dce5e0391..4fd1da0d0 100644 --- a/rust/test.go +++ b/rust/test.go @@ -148,35 +148,36 @@ func (test *testDecorator) install(ctx ModuleContext) { dataSrcPaths := android.PathsForModuleSrc(ctx, test.Properties.Data) dataSrcPaths = append(dataSrcPaths, android.PathsForModuleSrc(ctx, test.Properties.Device_common_data)...) - ctx.VisitDirectDepsWithTag(dataLibDepTag, func(dep android.Module) { + ctx.VisitDirectDepsProxyWithTag(dataLibDepTag, func(dep android.ModuleProxy) { depName := ctx.OtherModuleName(dep) - linkableDep, ok := dep.(cc.LinkableInterface) + linkableDep, ok := android.OtherModuleProvider(ctx, dep, cc.LinkableInfoProvider) if !ok { ctx.ModuleErrorf("data_lib %q is not a linkable module", depName) } - if linkableDep.OutputFile().Valid() { + if linkableDep.OutputFile.Valid() { // Copy the output in "lib[64]" so that it's compatible with // the default rpath values. + commonInfo := android.OtherModuleProviderOrDefault(ctx, dep, android.CommonModuleInfoKey) libDir := "lib" - if linkableDep.Target().Arch.ArchType.Multilib == "lib64" { + if commonInfo.Target.Arch.ArchType.Multilib == "lib64" { libDir = "lib64" } test.data = append(test.data, - android.DataPath{SrcPath: linkableDep.OutputFile().Path(), - RelativeInstallPath: filepath.Join(libDir, linkableDep.RelativeInstallPath())}) + android.DataPath{SrcPath: linkableDep.OutputFile.Path(), + RelativeInstallPath: filepath.Join(libDir, linkableDep.RelativeInstallPath)}) } }) - ctx.VisitDirectDepsWithTag(dataBinDepTag, func(dep android.Module) { + ctx.VisitDirectDepsProxyWithTag(dataBinDepTag, func(dep android.ModuleProxy) { depName := ctx.OtherModuleName(dep) - linkableDep, ok := dep.(cc.LinkableInterface) + linkableDep, ok := android.OtherModuleProvider(ctx, dep, cc.LinkableInfoProvider) if !ok { ctx.ModuleErrorf("data_bin %q is not a linkable module", depName) } - if linkableDep.OutputFile().Valid() { + if linkableDep.OutputFile.Valid() { test.data = append(test.data, - android.DataPath{SrcPath: linkableDep.OutputFile().Path(), - RelativeInstallPath: linkableDep.RelativeInstallPath()}) + android.DataPath{SrcPath: linkableDep.OutputFile.Path(), + RelativeInstallPath: linkableDep.RelativeInstallPath}) } }) |