Loading rust/builder.go +10 −10 Original line number Diff line number Diff line Loading @@ -69,36 +69,36 @@ func init() { pctx.HostBinToolVariable("SoongZipCmd", "soong_zip") } func TransformSrcToBinary(ctx android.ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, func TransformSrcToBinary(ctx ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, outputFile android.WritablePath, includeDirs []string) buildOutput { flags.RustFlags = append(flags.RustFlags, "-C lto") return transformSrctoCrate(ctx, mainSrc, deps, flags, outputFile, "bin", includeDirs) } func TransformSrctoRlib(ctx android.ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, func TransformSrctoRlib(ctx ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, outputFile android.WritablePath, includeDirs []string) buildOutput { return transformSrctoCrate(ctx, mainSrc, deps, flags, outputFile, "rlib", includeDirs) } func TransformSrctoDylib(ctx android.ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, func TransformSrctoDylib(ctx ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, outputFile android.WritablePath, includeDirs []string) buildOutput { return transformSrctoCrate(ctx, mainSrc, deps, flags, outputFile, "dylib", includeDirs) } func TransformSrctoStatic(ctx android.ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, func TransformSrctoStatic(ctx ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, outputFile android.WritablePath, includeDirs []string) buildOutput { flags.RustFlags = append(flags.RustFlags, "-C lto") return transformSrctoCrate(ctx, mainSrc, deps, flags, outputFile, "staticlib", includeDirs) } func TransformSrctoShared(ctx android.ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, func TransformSrctoShared(ctx ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, outputFile android.WritablePath, includeDirs []string) buildOutput { flags.RustFlags = append(flags.RustFlags, "-C lto") return transformSrctoCrate(ctx, mainSrc, deps, flags, outputFile, "cdylib", includeDirs) } func TransformSrctoProcMacro(ctx android.ModuleContext, mainSrc android.Path, deps PathDeps, func TransformSrctoProcMacro(ctx ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, outputFile android.WritablePath, includeDirs []string) buildOutput { return transformSrctoCrate(ctx, mainSrc, deps, flags, outputFile, "proc-macro", includeDirs) } Loading @@ -111,7 +111,7 @@ func rustLibsToPaths(libs RustLibraries) android.Paths { return paths } func transformSrctoCrate(ctx android.ModuleContext, main android.Path, deps PathDeps, flags Flags, func transformSrctoCrate(ctx ModuleContext, main android.Path, deps PathDeps, flags Flags, outputFile android.WritablePath, crate_type string, includeDirs []string) buildOutput { var inputs android.Paths Loading @@ -121,8 +121,8 @@ func transformSrctoCrate(ctx android.ModuleContext, main android.Path, deps Path var implicitOutputs android.WritablePaths output.outputFile = outputFile crate_name := ctx.(ModuleContext).CrateName() targetTriple := ctx.(ModuleContext).toolchain().RustTriple() crate_name := ctx.RustModule().CrateName() targetTriple := ctx.toolchain().RustTriple() inputs = append(inputs, main) Loading Loading @@ -233,7 +233,7 @@ func transformSrctoCrate(ctx android.ModuleContext, main android.Path, deps Path return output } func TransformCoverageFilesToZip(ctx android.ModuleContext, func TransformCoverageFilesToZip(ctx ModuleContext, covFiles android.Paths, baseName string) android.OptionalPath { if len(covFiles) > 0 { Loading rust/compiler.go +1 −1 Original line number Diff line number Diff line Loading @@ -253,7 +253,7 @@ func (compiler *baseCompiler) getStem(ctx ModuleContext) string { } func (compiler *baseCompiler) getStemWithoutSuffix(ctx BaseModuleContext) string { stem := ctx.baseModuleName() stem := ctx.ModuleName() if String(compiler.Properties.Stem) != "" { stem = String(compiler.Properties.Stem) } Loading rust/coverage.go +1 −1 Original line number Diff line number Diff line Loading @@ -67,6 +67,6 @@ func (cov *coverage) begin(ctx BaseModuleContext) { // Host coverage not yet supported. } else { // Update useSdk and sdkVersion args if Rust modules become SDK aware. cov.Properties = cc.SetCoverageProperties(ctx, cov.Properties, ctx.nativeCoverage(), false, "") cov.Properties = cc.SetCoverageProperties(ctx, cov.Properties, ctx.RustModule().nativeCoverage(), false, "") } } rust/library.go +1 −1 Original line number Diff line number Diff line Loading @@ -329,7 +329,7 @@ func (library *libraryDecorator) sharedLibFilename(ctx ModuleContext) string { } func (library *libraryDecorator) compilerFlags(ctx ModuleContext, flags Flags) Flags { flags.RustFlags = append(flags.RustFlags, "-C metadata="+ctx.baseModuleName()) flags.RustFlags = append(flags.RustFlags, "-C metadata="+ctx.ModuleName()) flags = library.baseCompiler.compilerFlags(ctx, flags) if library.shared() || library.static() { library.includeDirs = append(library.includeDirs, android.PathsForModuleSrc(ctx, library.Properties.Include_dirs)...) Loading rust/rust.go +25 −39 Original line number Diff line number Diff line Loading @@ -514,37 +514,48 @@ type DepsContext interface { } type ModuleContextIntf interface { RustModule() *Module toolchain() config.Toolchain baseModuleName() string CrateName() string nativeCoverage() bool } type depsContext struct { android.BottomUpMutatorContext moduleContextImpl } type moduleContext struct { android.ModuleContext moduleContextImpl } func (ctx *moduleContextImpl) nativeCoverage() bool { return ctx.mod.nativeCoverage() type baseModuleContext struct { android.BaseModuleContext } func (mod *Module) nativeCoverage() bool { return mod.compiler != nil && mod.compiler.nativeCoverage() func (ctx *moduleContext) RustModule() *Module { return ctx.Module().(*Module) } func (ctx *moduleContext) toolchain() config.Toolchain { return ctx.RustModule().toolchain(ctx) } func (ctx *depsContext) RustModule() *Module { return ctx.Module().(*Module) } type moduleContextImpl struct { mod *Module ctx BaseModuleContext func (ctx *depsContext) toolchain() config.Toolchain { return ctx.RustModule().toolchain(ctx) } func (ctx *moduleContextImpl) toolchain() config.Toolchain { return ctx.mod.toolchain(ctx.ctx) func (ctx *baseModuleContext) RustModule() *Module { return ctx.Module().(*Module) } func (ctx *baseModuleContext) toolchain() config.Toolchain { return ctx.RustModule().toolchain(ctx) } func (mod *Module) nativeCoverage() bool { return mod.compiler != nil && mod.compiler.nativeCoverage() } func (mod *Module) toolchain(ctx android.BaseModuleContext) config.Toolchain { Loading @@ -560,11 +571,7 @@ func (d *Defaults) GenerateAndroidBuildActions(ctx android.ModuleContext) { func (mod *Module) GenerateAndroidBuildActions(actx android.ModuleContext) { ctx := &moduleContext{ ModuleContext: actx, moduleContextImpl: moduleContextImpl{ mod: mod, }, } ctx.ctx = ctx toolchain := mod.toolchain(ctx) Loading Loading @@ -618,14 +625,6 @@ func (mod *Module) deps(ctx DepsContext) Deps { } func (ctx *moduleContextImpl) baseModuleName() string { return ctx.mod.ModuleBase.BaseModuleName() } func (ctx *moduleContextImpl) CrateName() string { return ctx.mod.CrateName() } type dependencyTag struct { blueprint.BaseDependencyTag name string Loading Loading @@ -822,11 +821,7 @@ func libNameFromFilePath(filepath android.Path) string { func (mod *Module) DepsMutator(actx android.BottomUpMutatorContext) { ctx := &depsContext{ BottomUpMutatorContext: actx, moduleContextImpl: moduleContextImpl{ mod: mod, }, } ctx.ctx = ctx deps := mod.deps(ctx) commonDepVariations := []blueprint.Variation{} Loading Loading @@ -873,19 +868,10 @@ func BeginMutator(ctx android.BottomUpMutatorContext) { } } type baseModuleContext struct { android.BaseModuleContext moduleContextImpl } func (mod *Module) beginMutator(actx android.BottomUpMutatorContext) { ctx := &baseModuleContext{ BaseModuleContext: actx, moduleContextImpl: moduleContextImpl{ mod: mod, }, } ctx.ctx = ctx mod.begin(ctx) } Loading Loading
rust/builder.go +10 −10 Original line number Diff line number Diff line Loading @@ -69,36 +69,36 @@ func init() { pctx.HostBinToolVariable("SoongZipCmd", "soong_zip") } func TransformSrcToBinary(ctx android.ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, func TransformSrcToBinary(ctx ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, outputFile android.WritablePath, includeDirs []string) buildOutput { flags.RustFlags = append(flags.RustFlags, "-C lto") return transformSrctoCrate(ctx, mainSrc, deps, flags, outputFile, "bin", includeDirs) } func TransformSrctoRlib(ctx android.ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, func TransformSrctoRlib(ctx ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, outputFile android.WritablePath, includeDirs []string) buildOutput { return transformSrctoCrate(ctx, mainSrc, deps, flags, outputFile, "rlib", includeDirs) } func TransformSrctoDylib(ctx android.ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, func TransformSrctoDylib(ctx ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, outputFile android.WritablePath, includeDirs []string) buildOutput { return transformSrctoCrate(ctx, mainSrc, deps, flags, outputFile, "dylib", includeDirs) } func TransformSrctoStatic(ctx android.ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, func TransformSrctoStatic(ctx ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, outputFile android.WritablePath, includeDirs []string) buildOutput { flags.RustFlags = append(flags.RustFlags, "-C lto") return transformSrctoCrate(ctx, mainSrc, deps, flags, outputFile, "staticlib", includeDirs) } func TransformSrctoShared(ctx android.ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, func TransformSrctoShared(ctx ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, outputFile android.WritablePath, includeDirs []string) buildOutput { flags.RustFlags = append(flags.RustFlags, "-C lto") return transformSrctoCrate(ctx, mainSrc, deps, flags, outputFile, "cdylib", includeDirs) } func TransformSrctoProcMacro(ctx android.ModuleContext, mainSrc android.Path, deps PathDeps, func TransformSrctoProcMacro(ctx ModuleContext, mainSrc android.Path, deps PathDeps, flags Flags, outputFile android.WritablePath, includeDirs []string) buildOutput { return transformSrctoCrate(ctx, mainSrc, deps, flags, outputFile, "proc-macro", includeDirs) } Loading @@ -111,7 +111,7 @@ func rustLibsToPaths(libs RustLibraries) android.Paths { return paths } func transformSrctoCrate(ctx android.ModuleContext, main android.Path, deps PathDeps, flags Flags, func transformSrctoCrate(ctx ModuleContext, main android.Path, deps PathDeps, flags Flags, outputFile android.WritablePath, crate_type string, includeDirs []string) buildOutput { var inputs android.Paths Loading @@ -121,8 +121,8 @@ func transformSrctoCrate(ctx android.ModuleContext, main android.Path, deps Path var implicitOutputs android.WritablePaths output.outputFile = outputFile crate_name := ctx.(ModuleContext).CrateName() targetTriple := ctx.(ModuleContext).toolchain().RustTriple() crate_name := ctx.RustModule().CrateName() targetTriple := ctx.toolchain().RustTriple() inputs = append(inputs, main) Loading Loading @@ -233,7 +233,7 @@ func transformSrctoCrate(ctx android.ModuleContext, main android.Path, deps Path return output } func TransformCoverageFilesToZip(ctx android.ModuleContext, func TransformCoverageFilesToZip(ctx ModuleContext, covFiles android.Paths, baseName string) android.OptionalPath { if len(covFiles) > 0 { Loading
rust/compiler.go +1 −1 Original line number Diff line number Diff line Loading @@ -253,7 +253,7 @@ func (compiler *baseCompiler) getStem(ctx ModuleContext) string { } func (compiler *baseCompiler) getStemWithoutSuffix(ctx BaseModuleContext) string { stem := ctx.baseModuleName() stem := ctx.ModuleName() if String(compiler.Properties.Stem) != "" { stem = String(compiler.Properties.Stem) } Loading
rust/coverage.go +1 −1 Original line number Diff line number Diff line Loading @@ -67,6 +67,6 @@ func (cov *coverage) begin(ctx BaseModuleContext) { // Host coverage not yet supported. } else { // Update useSdk and sdkVersion args if Rust modules become SDK aware. cov.Properties = cc.SetCoverageProperties(ctx, cov.Properties, ctx.nativeCoverage(), false, "") cov.Properties = cc.SetCoverageProperties(ctx, cov.Properties, ctx.RustModule().nativeCoverage(), false, "") } }
rust/library.go +1 −1 Original line number Diff line number Diff line Loading @@ -329,7 +329,7 @@ func (library *libraryDecorator) sharedLibFilename(ctx ModuleContext) string { } func (library *libraryDecorator) compilerFlags(ctx ModuleContext, flags Flags) Flags { flags.RustFlags = append(flags.RustFlags, "-C metadata="+ctx.baseModuleName()) flags.RustFlags = append(flags.RustFlags, "-C metadata="+ctx.ModuleName()) flags = library.baseCompiler.compilerFlags(ctx, flags) if library.shared() || library.static() { library.includeDirs = append(library.includeDirs, android.PathsForModuleSrc(ctx, library.Properties.Include_dirs)...) Loading
rust/rust.go +25 −39 Original line number Diff line number Diff line Loading @@ -514,37 +514,48 @@ type DepsContext interface { } type ModuleContextIntf interface { RustModule() *Module toolchain() config.Toolchain baseModuleName() string CrateName() string nativeCoverage() bool } type depsContext struct { android.BottomUpMutatorContext moduleContextImpl } type moduleContext struct { android.ModuleContext moduleContextImpl } func (ctx *moduleContextImpl) nativeCoverage() bool { return ctx.mod.nativeCoverage() type baseModuleContext struct { android.BaseModuleContext } func (mod *Module) nativeCoverage() bool { return mod.compiler != nil && mod.compiler.nativeCoverage() func (ctx *moduleContext) RustModule() *Module { return ctx.Module().(*Module) } func (ctx *moduleContext) toolchain() config.Toolchain { return ctx.RustModule().toolchain(ctx) } func (ctx *depsContext) RustModule() *Module { return ctx.Module().(*Module) } type moduleContextImpl struct { mod *Module ctx BaseModuleContext func (ctx *depsContext) toolchain() config.Toolchain { return ctx.RustModule().toolchain(ctx) } func (ctx *moduleContextImpl) toolchain() config.Toolchain { return ctx.mod.toolchain(ctx.ctx) func (ctx *baseModuleContext) RustModule() *Module { return ctx.Module().(*Module) } func (ctx *baseModuleContext) toolchain() config.Toolchain { return ctx.RustModule().toolchain(ctx) } func (mod *Module) nativeCoverage() bool { return mod.compiler != nil && mod.compiler.nativeCoverage() } func (mod *Module) toolchain(ctx android.BaseModuleContext) config.Toolchain { Loading @@ -560,11 +571,7 @@ func (d *Defaults) GenerateAndroidBuildActions(ctx android.ModuleContext) { func (mod *Module) GenerateAndroidBuildActions(actx android.ModuleContext) { ctx := &moduleContext{ ModuleContext: actx, moduleContextImpl: moduleContextImpl{ mod: mod, }, } ctx.ctx = ctx toolchain := mod.toolchain(ctx) Loading Loading @@ -618,14 +625,6 @@ func (mod *Module) deps(ctx DepsContext) Deps { } func (ctx *moduleContextImpl) baseModuleName() string { return ctx.mod.ModuleBase.BaseModuleName() } func (ctx *moduleContextImpl) CrateName() string { return ctx.mod.CrateName() } type dependencyTag struct { blueprint.BaseDependencyTag name string Loading Loading @@ -822,11 +821,7 @@ func libNameFromFilePath(filepath android.Path) string { func (mod *Module) DepsMutator(actx android.BottomUpMutatorContext) { ctx := &depsContext{ BottomUpMutatorContext: actx, moduleContextImpl: moduleContextImpl{ mod: mod, }, } ctx.ctx = ctx deps := mod.deps(ctx) commonDepVariations := []blueprint.Variation{} Loading Loading @@ -873,19 +868,10 @@ func BeginMutator(ctx android.BottomUpMutatorContext) { } } type baseModuleContext struct { android.BaseModuleContext moduleContextImpl } func (mod *Module) beginMutator(actx android.BottomUpMutatorContext) { ctx := &baseModuleContext{ BaseModuleContext: actx, moduleContextImpl: moduleContextImpl{ mod: mod, }, } ctx.ctx = ctx mod.begin(ctx) } Loading