|
|
|
@@ -509,7 +509,7 @@ func (flagExporter *flagExporter) exportLinkObjects(flags ...string) {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (flagExporter *flagExporter) setProvider(ctx ModuleContext) {
|
|
|
|
|
ctx.SetProvider(FlagExporterInfoProvider, FlagExporterInfo{
|
|
|
|
|
android.SetProvider(ctx, FlagExporterInfoProvider, FlagExporterInfo{
|
|
|
|
|
LinkDirs: flagExporter.linkDirs,
|
|
|
|
|
LinkObjects: flagExporter.linkObjects,
|
|
|
|
|
})
|
|
|
|
@@ -747,7 +747,8 @@ func (mod *Module) installable(apexInfo android.ApexInfo) bool {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (ctx moduleContext) apexVariationName() string {
|
|
|
|
|
return ctx.Provider(android.ApexInfoProvider).(android.ApexInfo).ApexVariationName
|
|
|
|
|
apexInfo, _ := android.ModuleProvider(ctx, android.ApexInfoProvider)
|
|
|
|
|
return apexInfo.ApexVariationName
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var _ cc.LinkableInterface = (*Module)(nil)
|
|
|
|
@@ -897,7 +898,7 @@ func (mod *Module) GenerateAndroidBuildActions(actx android.ModuleContext) {
|
|
|
|
|
ModuleContext: actx,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
apexInfo := actx.Provider(android.ApexInfoProvider).(android.ApexInfo)
|
|
|
|
|
apexInfo, _ := android.ModuleProvider(actx, android.ApexInfoProvider)
|
|
|
|
|
if !apexInfo.IsForPlatform() {
|
|
|
|
|
mod.hideApexVariantFromMake = true
|
|
|
|
|
}
|
|
|
|
@@ -950,7 +951,7 @@ func (mod *Module) GenerateAndroidBuildActions(actx android.ModuleContext) {
|
|
|
|
|
sourceLib := sourceMod.(*Module).compiler.(*libraryDecorator)
|
|
|
|
|
mod.sourceProvider.setOutputFiles(sourceLib.sourceProvider.Srcs())
|
|
|
|
|
}
|
|
|
|
|
ctx.SetProvider(blueprint.SrcsFileProviderKey, blueprint.SrcsFileProviderData{SrcPaths: mod.sourceProvider.Srcs().Strings()})
|
|
|
|
|
android.SetProvider(ctx, blueprint.SrcsFileProviderKey, blueprint.SrcsFileProviderData{SrcPaths: mod.sourceProvider.Srcs().Strings()})
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if mod.compiler != nil && !mod.compiler.Disabled() {
|
|
|
|
@@ -978,7 +979,7 @@ func (mod *Module) GenerateAndroidBuildActions(actx android.ModuleContext) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
apexInfo := actx.Provider(android.ApexInfoProvider).(android.ApexInfo)
|
|
|
|
|
apexInfo, _ := android.ModuleProvider(actx, android.ApexInfoProvider)
|
|
|
|
|
if !proptools.BoolDefault(mod.Installable(), mod.EverInstallable()) && !mod.ProcMacro() {
|
|
|
|
|
// If the module has been specifically configure to not be installed then
|
|
|
|
|
// hide from make as otherwise it will break when running inside make as the
|
|
|
|
@@ -1003,7 +1004,7 @@ func (mod *Module) GenerateAndroidBuildActions(actx android.ModuleContext) {
|
|
|
|
|
ctx.Phony("rust", ctx.RustModule().OutputFile().Path())
|
|
|
|
|
}
|
|
|
|
|
if mod.testModule {
|
|
|
|
|
ctx.SetProvider(testing.TestModuleProviderKey, testing.TestModuleProviderData{})
|
|
|
|
|
android.SetProvider(ctx, testing.TestModuleProviderKey, testing.TestModuleProviderData{})
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
aconfig.CollectDependencyAconfigFiles(ctx, &mod.mergedAconfigFiles)
|
|
|
|
@@ -1148,7 +1149,7 @@ func (mod *Module) depsToPaths(ctx android.ModuleContext) PathDeps {
|
|
|
|
|
|
|
|
|
|
// For the dependency from platform to apex, use the latest stubs
|
|
|
|
|
mod.apexSdkVersion = android.FutureApiLevel
|
|
|
|
|
apexInfo := ctx.Provider(android.ApexInfoProvider).(android.ApexInfo)
|
|
|
|
|
apexInfo, _ := android.ModuleProvider(ctx, android.ApexInfoProvider)
|
|
|
|
|
if !apexInfo.IsForPlatform() {
|
|
|
|
|
mod.apexSdkVersion = apexInfo.MinSdkVersion
|
|
|
|
|
}
|
|
|
|
@@ -1167,7 +1168,7 @@ func (mod *Module) depsToPaths(ctx android.ModuleContext) PathDeps {
|
|
|
|
|
|
|
|
|
|
ctx.VisitDirectDeps(func(dep android.Module) {
|
|
|
|
|
if dep.Name() == "api_imports" {
|
|
|
|
|
apiImportInfo = ctx.OtherModuleProvider(dep, multitree.ApiImportsProvider).(multitree.ApiImportInfo)
|
|
|
|
|
apiImportInfo, _ = android.OtherModuleProvider(ctx, dep, multitree.ApiImportsProvider)
|
|
|
|
|
hasApiImportInfo = true
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
@@ -1278,7 +1279,7 @@ func (mod *Module) depsToPaths(ctx android.ModuleContext) PathDeps {
|
|
|
|
|
|
|
|
|
|
//Append the dependencies exportedDirs, except for proc-macros which target a different arch/OS
|
|
|
|
|
if depTag != procMacroDepTag {
|
|
|
|
|
exportedInfo := ctx.OtherModuleProvider(dep, FlagExporterInfoProvider).(FlagExporterInfo)
|
|
|
|
|
exportedInfo, _ := android.OtherModuleProvider(ctx, dep, FlagExporterInfoProvider)
|
|
|
|
|
depPaths.linkDirs = append(depPaths.linkDirs, exportedInfo.LinkDirs...)
|
|
|
|
|
depPaths.depFlags = append(depPaths.depFlags, exportedInfo.Flags...)
|
|
|
|
|
depPaths.linkObjects = append(depPaths.linkObjects, exportedInfo.LinkObjects...)
|
|
|
|
@@ -1294,7 +1295,7 @@ func (mod *Module) depsToPaths(ctx android.ModuleContext) PathDeps {
|
|
|
|
|
if depTag == sourceDepTag {
|
|
|
|
|
if _, ok := mod.sourceProvider.(*protobufDecorator); ok && mod.Source() {
|
|
|
|
|
if _, ok := rustDep.sourceProvider.(*protobufDecorator); ok {
|
|
|
|
|
exportedInfo := ctx.OtherModuleProvider(dep, cc.FlagExporterInfoProvider).(cc.FlagExporterInfo)
|
|
|
|
|
exportedInfo, _ := android.OtherModuleProvider(ctx, dep, cc.FlagExporterInfoProvider)
|
|
|
|
|
depPaths.depIncludePaths = append(depPaths.depIncludePaths, exportedInfo.IncludeDirs...)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@@ -1347,7 +1348,7 @@ func (mod *Module) depsToPaths(ctx android.ModuleContext) PathDeps {
|
|
|
|
|
depPaths.linkObjects = append(depPaths.linkObjects, linkObject.String())
|
|
|
|
|
depPaths.linkDirs = append(depPaths.linkDirs, linkPath)
|
|
|
|
|
|
|
|
|
|
exportedInfo := ctx.OtherModuleProvider(dep, cc.FlagExporterInfoProvider).(cc.FlagExporterInfo)
|
|
|
|
|
exportedInfo, _ := android.OtherModuleProvider(ctx, dep, cc.FlagExporterInfoProvider)
|
|
|
|
|
depPaths.depIncludePaths = append(depPaths.depIncludePaths, exportedInfo.IncludeDirs...)
|
|
|
|
|
depPaths.depSystemIncludePaths = append(depPaths.depSystemIncludePaths, exportedInfo.SystemIncludeDirs...)
|
|
|
|
|
depPaths.depClangFlags = append(depPaths.depClangFlags, exportedInfo.Flags...)
|
|
|
|
@@ -1391,7 +1392,7 @@ func (mod *Module) depsToPaths(ctx android.ModuleContext) PathDeps {
|
|
|
|
|
directAndroidMkSharedLibs = append(directAndroidMkSharedLibs, makeLibName)
|
|
|
|
|
exportDep = true
|
|
|
|
|
case cc.IsHeaderDepTag(depTag):
|
|
|
|
|
exportedInfo := ctx.OtherModuleProvider(dep, cc.FlagExporterInfoProvider).(cc.FlagExporterInfo)
|
|
|
|
|
exportedInfo, _ := android.OtherModuleProvider(ctx, dep, cc.FlagExporterInfoProvider)
|
|
|
|
|
depPaths.depIncludePaths = append(depPaths.depIncludePaths, exportedInfo.IncludeDirs...)
|
|
|
|
|
depPaths.depSystemIncludePaths = append(depPaths.depSystemIncludePaths, exportedInfo.SystemIncludeDirs...)
|
|
|
|
|
depPaths.depGeneratedHeaders = append(depPaths.depGeneratedHeaders, exportedInfo.GeneratedHeaders...)
|
|
|
|
|