From 33bfb0a36a80fe50510539066d607f9395c8454d Mon Sep 17 00:00:00 2001 From: Colin Cross Date: Mon, 21 Nov 2016 17:23:08 -0800 Subject: [PATCH] genrule: support deps files If a genrule sets deps_file: true, use a file in the gen directory as a GCC-style deps file. Test: m -j libLLVMObject Change-Id: Id410165847e4eaea1853a392512e38787c431523 --- android/module.go | 6 ++++++ genrule/genrule.go | 28 ++++++++++++++++++++++++---- 2 files changed, 30 insertions(+), 4 deletions(-) diff --git a/android/module.go b/android/module.go index 2b6f8ba58..110f04c73 100644 --- a/android/module.go +++ b/android/module.go @@ -34,6 +34,8 @@ var ( type ModuleBuildParams struct { Rule blueprint.Rule + Deps blueprint.Deps + Depfile WritablePath Output WritablePath Outputs WritablePaths ImplicitOutput WritablePath @@ -521,6 +523,7 @@ func (a *androidModuleContext) Build(pctx blueprint.PackageContext, params bluep func (a *androidModuleContext) ModuleBuild(pctx blueprint.PackageContext, params ModuleBuildParams) { bparams := blueprint.BuildParams{ Rule: params.Rule, + Deps: params.Deps, Outputs: params.Outputs.Strings(), ImplicitOutputs: params.ImplicitOutputs.Strings(), Inputs: params.Inputs.Strings(), @@ -530,6 +533,9 @@ func (a *androidModuleContext) ModuleBuild(pctx blueprint.PackageContext, params Optional: !params.Default, } + if params.Depfile != nil { + bparams.Depfile = params.Depfile.String() + } if params.Output != nil { bparams.Outputs = append(bparams.Outputs, params.Output.String()) } diff --git a/genrule/genrule.go b/genrule/genrule.go index 498858d28..b1ce80467 100644 --- a/genrule/genrule.go +++ b/genrule/genrule.go @@ -47,6 +47,7 @@ type generatorProperties struct { // $(location