diff options
author | 2020-08-27 13:37:29 +0200 | |
---|---|---|
committer | 2020-08-28 10:47:11 +0200 | |
commit | 31f1bb80efe196f2340ec88a6cc374963e7aa7b5 (patch) | |
tree | e05c724468ed4b91c4754c100e5c60a5b79f96e9 | |
parent | 19e1c6c8e7243326425ec3de089a45c8e7cd1465 (diff) |
rust: add ccToolchain to Module
The cc toolchain information is required when using cc.Stripper.
Move to a Module method to avoid importing the cc package everywhere.
Test: m nothing
Bug: 153430439
Change-Id: I497dcdff4e767ecb8b8688c73cf88850c302683d
-rw-r--r-- | rust/bindgen.go | 5 | ||||
-rw-r--r-- | rust/rust.go | 5 | ||||
-rw-r--r-- | rust/source_provider.go | 4 |
3 files changed, 9 insertions, 5 deletions
diff --git a/rust/bindgen.go b/rust/bindgen.go index 9b09e616e..3f7a6ce3d 100644 --- a/rust/bindgen.go +++ b/rust/bindgen.go @@ -21,7 +21,6 @@ import ( "github.com/google/blueprint/proptools" "android/soong/android" - ccConfig "android/soong/cc/config" ) var ( @@ -92,8 +91,8 @@ type bindgenDecorator struct { Properties BindgenProperties } -func (b *bindgenDecorator) GenerateSource(ctx android.ModuleContext, deps PathDeps) android.Path { - ccToolchain := ccConfig.FindToolchain(ctx.Os(), ctx.Arch()) +func (b *bindgenDecorator) GenerateSource(ctx ModuleContext, deps PathDeps) android.Path { + ccToolchain := ctx.RustModule().ccToolchain(ctx) var cflags []string var implicits android.Paths diff --git a/rust/rust.go b/rust/rust.go index 68dc5a08b..90329502d 100644 --- a/rust/rust.go +++ b/rust/rust.go @@ -23,6 +23,7 @@ import ( "android/soong/android" "android/soong/cc" + cc_config "android/soong/cc/config" "android/soong/rust/config" ) @@ -656,6 +657,10 @@ func (mod *Module) toolchain(ctx android.BaseModuleContext) config.Toolchain { return mod.cachedToolchain } +func (mod *Module) ccToolchain(ctx android.BaseModuleContext) cc_config.Toolchain { + return cc_config.FindToolchain(ctx.Os(), ctx.Arch()) +} + func (d *Defaults) GenerateAndroidBuildActions(ctx android.ModuleContext) { } diff --git a/rust/source_provider.go b/rust/source_provider.go index e168718e4..755a369a7 100644 --- a/rust/source_provider.go +++ b/rust/source_provider.go @@ -38,7 +38,7 @@ type BaseSourceProvider struct { var _ SourceProvider = (*BaseSourceProvider)(nil) type SourceProvider interface { - GenerateSource(ctx android.ModuleContext, deps PathDeps) android.Path + GenerateSource(ctx ModuleContext, deps PathDeps) android.Path Srcs() android.Paths SourceProviderProps() []interface{} SourceProviderDeps(ctx DepsContext, deps Deps) Deps @@ -49,7 +49,7 @@ func (sp *BaseSourceProvider) Srcs() android.Paths { return android.Paths{sp.OutputFile} } -func (sp *BaseSourceProvider) GenerateSource(ctx android.ModuleContext, deps PathDeps) android.Path { +func (sp *BaseSourceProvider) GenerateSource(ctx ModuleContext, deps PathDeps) android.Path { panic("BaseSourceProviderModule does not implement GenerateSource()") } |