Lines Matching refs:a
172 func (a *androidMkExtraEntriesContext) Provider(provider blueprint.AnyProviderKey) (any, bool) {
173 return a.ctx.moduleProvider(a.mod, provider)
182 func (a *AndroidMkEntries) SetString(name, value string) {
183 if _, ok := a.EntryMap[name]; !ok {
184 a.entryOrder = append(a.entryOrder, name)
186 a.EntryMap[name] = []string{value}
190 func (a *AndroidMkEntries) SetPath(name string, path Path) {
191 if _, ok := a.EntryMap[name]; !ok {
192 a.entryOrder = append(a.entryOrder, name)
194 a.EntryMap[name] = []string{path.String()}
199 func (a *AndroidMkEntries) SetOptionalPath(name string, path OptionalPath) {
201 a.SetPath(name, path.Path())
206 func (a *AndroidMkEntries) AddPath(name string, path Path) {
207 if _, ok := a.EntryMap[name]; !ok {
208 a.entryOrder = append(a.entryOrder, name)
210 a.EntryMap[name] = append(a.EntryMap[name], path.String())
215 func (a *AndroidMkEntries) AddOptionalPath(name string, path OptionalPath) {
217 a.AddPath(name, path.Path())
222 func (a *AndroidMkEntries) SetPaths(name string, paths Paths) {
223 if _, ok := a.EntryMap[name]; !ok {
224 a.entryOrder = append(a.entryOrder, name)
226 a.EntryMap[name] = paths.Strings()
231 func (a *AndroidMkEntries) SetOptionalPaths(name string, paths Paths) {
233 a.SetPaths(name, paths)
238 func (a *AndroidMkEntries) AddPaths(name string, paths Paths) {
239 if _, ok := a.EntryMap[name]; !ok {
240 a.entryOrder = append(a.entryOrder, name)
242 a.EntryMap[name] = append(a.EntryMap[name], paths.Strings()...)
247 func (a *AndroidMkEntries) SetBoolIfTrue(name string, flag bool) {
249 if _, ok := a.EntryMap[name]; !ok {
250 a.entryOrder = append(a.entryOrder, name)
252 a.EntryMap[name] = []string{"true"}
257 func (a *AndroidMkEntries) SetBool(name string, flag bool) {
258 if _, ok := a.EntryMap[name]; !ok {
259 a.entryOrder = append(a.entryOrder, name)
262 a.EntryMap[name] = []string{"true"}
264 a.EntryMap[name] = []string{"false"}
269 func (a *AndroidMkEntries) AddStrings(name string, value ...string) {
273 if _, ok := a.EntryMap[name]; !ok {
274 a.entryOrder = append(a.entryOrder, name)
276 a.EntryMap[name] = append(a.EntryMap[name], value...)
281 func (a *AndroidMkEntries) AddCompatibilityTestSuites(suites ...string) {
291 a.AddStrings("LOCAL_COMPATIBILITY_SUITE", suites...)
337 func (a *AndroidMkEntries) getDistContributions(mod blueprint.Module) *distContributions {
346 if a.DistFiles != nil {
348 availableTaggedDists = availableTaggedDists.merge(a.DistFiles)
353 if _, ok := availableTaggedDists[DefaultDistTag]; !ok && a.OutputFile.Valid() {
354 availableTaggedDists = availableTaggedDists.addPathsForTag(DefaultDistTag, a.OutputFile.Path())
438 productString = fmt.Sprintf("_%s", a.entryContext.Config().DeviceProduct())
485 func (a *AndroidMkEntries) GetDistForGoals(mod blueprint.Module) []string {
486 distContributions := a.getDistContributions(mod)
504 func (a *AndroidMkEntries) fillInEntries(ctx fillInEntriesContext, mod blueprint.Module) {
505 a.entryContext = ctx
506 a.EntryMap = make(map[string][]string)
510 if a.OverrideName != "" {
511 name = a.OverrideName
514 if a.Include == "" {
515 a.Include = "$(BUILD_PREBUILT)"
517 a.Required = append(a.Required, amod.RequiredModuleNames()...)
518 a.Host_required = append(a.Host_required, amod.HostRequiredModuleNames()...)
519 a.Target_required = append(a.Target_required, amod.TargetRequiredModuleNames()...)
521 for _, distString := range a.GetDistForGoals(mod) {
522 fmt.Fprintf(&a.header, distString)
525 …fmt.Fprintf(&a.header, "\ninclude $(CLEAR_VARS) # type: %s, name: %s, variant: %s\n", ctx.ModuleT…
528 a.SetString("LOCAL_PATH", ctx.ModuleDir(mod))
529 a.SetString("LOCAL_MODULE", name+a.SubName)
530 a.SetString("LOCAL_MODULE_CLASS", a.Class)
531 a.SetString("LOCAL_PREBUILT_MODULE_FILE", a.OutputFile.String())
532 a.AddStrings("LOCAL_REQUIRED_MODULES", a.Required...)
533 a.AddStrings("LOCAL_HOST_REQUIRED_MODULES", a.Host_required...)
534 a.AddStrings("LOCAL_TARGET_REQUIRED_MODULES", a.Target_required...)
535 a.AddStrings("LOCAL_SOONG_MODULE_TYPE", ctx.ModuleType(amod))
542 a.SetPath("LOCAL_SOONG_INSTALLED_MODULE", base.katiInstalls[len(base.katiInstalls)-1].to)
543 a.SetString("LOCAL_SOONG_INSTALL_PAIRS", base.katiInstalls.BuiltInstalled())
544 a.SetPaths("LOCAL_SOONG_INSTALL_SYMLINKS", base.katiSymlinks.InstallPaths().Paths())
549 …a.SetBoolIfTrue("LOCAL_UNINSTALLABLE_MODULE", proptools.Bool(base.commonProperties.No_full_install…
553 a.AddStrings("LOCAL_TEST_DATA", androidMkDataPaths(base.testData)...)
557 a.SetBoolIfTrue("LOCAL_NOT_AVAILABLE_FOR_PLATFORM", am.NotAvailableForPlatform())
567 a.SetString("LOCAL_MODULE_HOST_CROSS_ARCH", archStr)
572 a.SetString("LOCAL_MODULE_HOST_ARCH", archStr)
582 a.SetString("LOCAL_MODULE_TARGET_ARCH", hostArchStr)
585 a.SetString("LOCAL_MODULE_TARGET_ARCH", archStr)
590 a.AddPaths("LOCAL_FULL_INIT_RC", base.initRcPaths)
593 a.AddPaths("LOCAL_FULL_VINTF_FRAGMENTS", base.vintfFragmentsPaths)
595 a.SetBoolIfTrue("LOCAL_PROPRIETARY_MODULE", Bool(base.commonProperties.Proprietary))
597 a.SetString("LOCAL_VENDOR_MODULE", "true")
599 a.SetBoolIfTrue("LOCAL_ODM_MODULE", Bool(base.commonProperties.Device_specific))
600 a.SetBoolIfTrue("LOCAL_PRODUCT_MODULE", Bool(base.commonProperties.Product_specific))
601 a.SetBoolIfTrue("LOCAL_SYSTEM_EXT_MODULE", Bool(base.commonProperties.System_ext_specific))
603 a.SetString("LOCAL_MODULE_OWNER", *base.commonProperties.Owner)
612 a.SetString("LOCAL_MODULE_HOST_OS", makeOs)
613 a.SetString("LOCAL_IS_HOST_MODULE", "true")
636 a.SetPath("LOCAL_SOONG_LICENSE_METADATA", licenseMetadata.LicenseMetadataPath)
640 a.SetBool("LOCAL_SOONG_MODULE_INFO_JSON", true)
648 for _, extra := range a.ExtraEntries {
649 extra(extraCtx, a)
653 fmt.Fprintln(&a.footer, "include "+a.Include)
655 for _, footerFunc := range a.ExtraFooters {
656 footerFunc(&a.footer, name, prefix, blueprintDir)
660 func (a *AndroidMkEntries) disabled() bool {
661 return a.Disabled || !a.OutputFile.Valid()
666 func (a *AndroidMkEntries) write(w io.Writer) {
667 if a.disabled() {
671 w.Write(a.header.Bytes())
672 for _, name := range a.entryOrder {
673 AndroidMkEmitAssignList(w, name, a.EntryMap[name])
675 w.Write(a.footer.Bytes())
678 func (a *AndroidMkEntries) FooterLinesForTests() []string {
679 return strings.Split(string(a.footer.Bytes()), "\n")