• Home
  • Raw
  • Download

Lines Matching refs:a

175 func (a *AndroidApp) IsInstallable() bool {
176 return Bool(a.properties.Installable)
179 func (a *AndroidApp) ExportedProguardFlagFiles() android.Paths {
183 func (a *AndroidApp) ExportedStaticPackages() android.Paths {
187 func (a *AndroidApp) OutputFile() android.Path {
188 return a.outputFile
191 func (a *AndroidApp) Certificate() Certificate {
192 return a.certificate
195 func (a *AndroidApp) JniCoverageOutputs() android.Paths {
196 return a.jniCoverageOutputs
216 func (a *AndroidApp) DepsMutator(ctx android.BottomUpMutatorContext) {
217 a.Module.deps(ctx)
219 if String(a.appProperties.Stl) == "c++_shared" && !a.SdkVersion(ctx).Specified() {
223 sdkDep := decodeSdkDep(ctx, android.SdkContext(a))
225 a.aapt.deps(ctx, sdkDep)
228 usesSDK := a.SdkVersion(ctx).Specified() && a.SdkVersion(ctx).Kind != android.SdkCorePlatform
230 if usesSDK && Bool(a.appProperties.Jni_uses_sdk_apis) {
233 } else if !usesSDK && Bool(a.appProperties.Jni_uses_platform_apis) {
246 if (usesSDK && !a.RequiresStableAPIs(ctx) &&
247 !Bool(a.appProperties.Jni_uses_platform_apis)) ||
248 Bool(a.appProperties.Jni_uses_sdk_apis) {
251 ctx.AddFarVariationDependencies(variation, jniLibTag, a.appProperties.Jni_libs...)
254 a.usesLibrary.deps(ctx, sdkDep.hasFrameworkLibs())
257 func (a *AndroidApp) OverridablePropertiesDepsMutator(ctx android.BottomUpMutatorContext) {
258 cert := android.SrcIsModule(a.getCertString(ctx))
263 for _, cert := range a.appProperties.Additional_certificates {
274 func (a *AndroidTestHelperApp) GenerateAndroidBuildActions(ctx android.ModuleContext) {
275 a.generateAndroidBuildActions(ctx)
278 func (a *AndroidApp) GenerateAndroidBuildActions(ctx android.ModuleContext) {
279 a.checkAppSdkVersions(ctx)
280 a.generateAndroidBuildActions(ctx)
281 a.generateJavaUsedByApex(ctx)
284 func (a *AndroidApp) checkAppSdkVersions(ctx android.ModuleContext) {
285 if a.Updatable() {
286 if !a.SdkVersion(ctx).Stable() {
287 …ctx.PropertyErrorf("sdk_version", "Updatable apps must use stable SDKs, found %v", a.SdkVersion(ct…
289 if String(a.deviceProperties.Min_sdk_version) == "" {
293 if minSdkVersion, err := a.MinSdkVersion(ctx).EffectiveVersion(ctx); err == nil {
294 a.checkJniLibsSdkVersion(ctx, minSdkVersion)
295 android.CheckMinSdkVersion(ctx, minSdkVersion, a.WalkPayloadDeps)
301 a.checkPlatformAPI(ctx)
302 a.checkSdkVersions(ctx)
307 func (a *AndroidApp) checkJniLibsSdkVersion(ctx android.ModuleContext, minSdkVersion android.ApiLev…
329 func (a *AndroidApp) useEmbeddedNativeLibs(ctx android.ModuleContext) bool {
330 minSdkVersion, err := a.MinSdkVersion(ctx).EffectiveVersion(ctx)
332 ctx.PropertyErrorf("min_sdk_version", "invalid value %q: %s", a.MinSdkVersion(ctx), err)
336 …return (minSdkVersion.FinalOrFutureInt() >= 23 && Bool(a.appProperties.Use_embedded_native_libs)) …
341 func (a *AndroidApp) shouldUncompressDex(ctx android.ModuleContext) bool {
342 if Bool(a.appProperties.Use_embedded_dex) {
348 if ctx.Config().UncompressPrivAppDex() && a.Privileged() {
356 return shouldUncompressDex(ctx, &a.dexpreopter)
359 func (a *AndroidApp) shouldEmbedJnis(ctx android.BaseModuleContext) bool {
361 return ctx.Config().UnbundledBuild() || Bool(a.appProperties.Use_embedded_native_libs) ||
362 !apexInfo.IsForPlatform() || a.appProperties.AlwaysPackageNativeLibs
374 func (a *AndroidApp) OverriddenManifestPackageName() string {
375 return a.overriddenManifestPackageName
378 func (a *AndroidApp) renameResourcesPackage() bool {
379 return proptools.BoolDefault(a.overridableAppProperties.Rename_resources_package, true)
382 func (a *AndroidApp) aaptBuildActions(ctx android.ModuleContext) {
383 usePlatformAPI := proptools.Bool(a.Module.deviceProperties.Platform_apis)
387 a.aapt.usesNonSdkApis = usePlatformAPI
390 a.aapt.hasNoCode = !a.hasCode(ctx)
395 hasProduct := android.PrefixInList(a.aaptProperties.Aaptflags, "--product")
400 if !Bool(a.aaptProperties.Aapt_include_all_resources) {
413 if overridden || a.overridableAppProperties.Package_name != nil {
416 manifestPackageName = *a.overridableAppProperties.Package_name
418 …aaptLinkFlags = append(aaptLinkFlags, generateAaptRenamePackageFlags(manifestPackageName, a.rename…
419 a.overriddenManifestPackageName = manifestPackageName
422 aaptLinkFlags = append(aaptLinkFlags, a.additionalAaptFlags...)
424 a.aapt.splitNames = a.appProperties.Package_splits
425 a.aapt.LoggingParent = String(a.overridableAppProperties.Logging_parent)
426 a.aapt.buildActions(ctx, android.SdkContext(a), a.classLoaderContexts,
427 a.usesLibraryProperties.Exclude_uses_libs, aaptLinkFlags...)
430 a.properties.Manifest = nil
433 func (a *AndroidApp) proguardBuildActions(ctx android.ModuleContext) {
443a.Module.extraProguardFlagFiles = append(a.Module.extraProguardFlagFiles, staticLibProguardFlagFil…
444 a.Module.extraProguardFlagFiles = append(a.Module.extraProguardFlagFiles, a.proguardOptionsFile)
447 func (a *AndroidApp) installPath(ctx android.ModuleContext) android.InstallPath {
452 } else if a.Privileged() {
453 installDir = filepath.Join("priv-app", a.installApkName)
455 installDir = filepath.Join("app", a.installApkName)
458 return android.PathForModuleInstall(ctx, installDir, a.installApkName+".apk")
461 func (a *AndroidApp) dexBuildActions(ctx android.ModuleContext) android.Path {
462 a.dexpreopter.installPath = a.installPath(ctx)
463 a.dexpreopter.isApp = true
464 if a.dexProperties.Uncompress_dex == nil {
466 a.dexProperties.Uncompress_dex = proptools.BoolPtr(a.shouldUncompressDex(ctx))
468 a.dexpreopter.uncompressedDex = *a.dexProperties.Uncompress_dex
469 a.dexpreopter.enforceUsesLibs = a.usesLibrary.enforceUsesLibraries()
470 a.dexpreopter.classLoaderContexts = a.classLoaderContexts
471 a.dexpreopter.manifestFile = a.mergedManifestFile
472 a.dexpreopter.preventInstall = a.appProperties.PreventInstall
475 a.Module.compile(ctx, a.aaptSrcJar)
478 return a.dexJarFile.PathOrNil()
481 func (a *AndroidApp) jniBuildActions(jniLibs []jniLib, ctx android.ModuleContext) android.WritableP…
484 a.jniLibs = jniLibs
485 if a.shouldEmbedJnis(ctx) {
487 a.installPathForJNISymbols = a.installPath(ctx)
488 TransformJniLibsToJar(ctx, jniJarFile, jniLibs, a.useEmbeddedNativeLibs(ctx))
501 a.jniCoverageOutputs = append(a.jniCoverageOutputs, jni.coverageFile.Path())
505 a.embeddedJniLibs = true
511 func (a *AndroidApp) JNISymbolsInstalls(installPath string) android.RuleBuilderInstalls {
513 for _, jniLib := range a.jniLibs {
561 func (a *AndroidApp) InstallApkName() string {
562 return a.installApkName
565 func (a *AndroidApp) generateAndroidBuildActions(ctx android.ModuleContext) {
569 a.hideApexVariantFromMake = true
572 a.aapt.useEmbeddedNativeLibs = a.useEmbeddedNativeLibs(ctx)
573 a.aapt.useEmbeddedDex = Bool(a.appProperties.Use_embedded_dex)
576 a.installApkName = ctx.DeviceConfig().OverridePackageNameFor(a.Stem())
580 a.installDir = android.PathForModuleInstall(ctx, "framework")
581 } else if a.Privileged() {
582 a.installDir = android.PathForModuleInstall(ctx, "priv-app", a.installApkName)
584a.installDir = android.PathForModuleInstall(ctx, a.installApkName, ctx.DeviceConfig().DeviceArch())
586 a.installDir = android.PathForModuleInstall(ctx, "app", a.installApkName)
588 a.onDeviceDir = android.InstallPathToOnDevicePath(ctx, a.installDir)
590 a.classLoaderContexts = a.usesLibrary.classLoaderContextForUsesLibDeps(ctx)
593 if Bool(a.appProperties.Embed_notices) || ctx.Config().IsEnvTrue("ALWAYS_EMBED_NOTICES") {
599 a.aapt.noticeFile = android.OptionalPathForPath(noticeAssetPath)
603 a.aaptBuildActions(ctx)
606 a.usesLibrary.freezeEnforceUsesLibraries()
609 requiredUsesLibs, optionalUsesLibs := a.classLoaderContexts.UsesLibs()
611 a.usesLibrary.addLib(usesLib, false)
614 a.usesLibrary.addLib(usesLib, true)
618 if a.usesLibrary.enforceUsesLibraries() {
619 manifestCheckFile := a.usesLibrary.verifyUsesLibrariesManifest(ctx, a.mergedManifestFile)
623 a.proguardBuildActions(ctx)
625 a.linter.mergedManifest = a.aapt.mergedManifestFile
626 a.linter.manifest = a.aapt.manifestPath
627 a.linter.resources = a.aapt.resourceFiles
628 a.linter.buildModuleReportZip = ctx.Config().UnbundledBuildApps()
630 dexJarFile := a.dexBuildActions(ctx)
632 …jniLibs, certificateDeps := collectAppDeps(ctx, a, a.shouldEmbedJnis(ctx), !Bool(a.appProperties.J…
633 jniJarFile := a.jniBuildActions(jniLibs, ctx)
639 certificates := processMainCert(a.ModuleBase, a.getCertString(ctx), certificateDeps, ctx)
644 a.certificate = certificates[0]
650 a.certificate = Certificate{
657 packageFile := android.PathForModuleOut(ctx, a.installApkName+".apk")
658 v4SigningRequested := Bool(a.Module.deviceProperties.V4_signature)
661 v4SignatureFile = android.PathForModuleOut(ctx, a.installApkName+".apk.idsig")
664 if lineage := String(a.overridableAppProperties.Lineage); lineage != "" {
668 rotationMinSdkVersion := String(a.overridableAppProperties.RotationMinSdkVersion)
670 …CreateAndSignAppPackage(ctx, packageFile, a.exportPackage, jniJarFile, dexJarFile, certificates, a…
671 a.outputFile = packageFile
673 a.extraOutputFiles = append(a.extraOutputFiles, v4SignatureFile)
676 if a.aapt.noticeFile.Valid() {
682 a.installDir.String() + "/",
684 a.outputFile.String(),
693 for _, split := range a.aapt.splits {
695 packageFile := android.PathForModuleOut(ctx, a.installApkName+"_"+split.suffix+".apk")
697 v4SignatureFile = android.PathForModuleOut(ctx, a.installApkName+"_"+split.suffix+".apk.idsig")
700 a.extraOutputFiles = append(a.extraOutputFiles, packageFile)
702 a.extraOutputFiles = append(a.extraOutputFiles, v4SignatureFile)
708 BuildBundleModule(ctx, bundleFile, a.exportPackage, jniJarFile, dexJarFile)
709 a.bundleFile = bundleFile
714 if (Bool(a.Module.properties.Installable) || ctx.Host()) && apexInfo.IsForPlatform() &&
715 !a.appProperties.PreventInstall {
718 for _, extra := range a.extraOutputFiles {
719 installed := ctx.InstallFile(a.installDir, extra.Base(), extra)
722 ctx.InstallFile(a.installDir, a.outputFile.Base(), a.outputFile, extraInstalledPaths...)
725 a.buildAppDependencyInfo(ctx)
801 func (a *AndroidApp) WalkPayloadDeps(ctx android.ModuleContext, do android.PayloadDepsCallback) {
803 isExternal := !a.DepIsInSameApex(ctx, child)
813 func (a *AndroidApp) buildAppDependencyInfo(ctx android.ModuleContext) {
819a.WalkPayloadDeps(ctx, func(ctx android.ModuleContext, from blueprint.Module, to android.ApexModul…
857 a.ApexBundleDepsInfo.BuildDepsInfoLists(ctx, a.MinSdkVersion(ctx).String(), depsInfo)
860 func (a *AndroidApp) Updatable() bool {
861 return Bool(a.appProperties.Updatable)
864 func (a *AndroidApp) SetUpdatable(val bool) {
865 a.appProperties.Updatable = &val
868 func (a *AndroidApp) getCertString(ctx android.BaseModuleContext) string {
873 return String(a.overridableAppProperties.Certificate)
876 func (a *AndroidApp) DepIsInSameApex(ctx android.BaseModuleContext, dep android.Module) bool {
880 return a.Library.DepIsInSameApex(ctx, dep)
884 func (a *AndroidApp) OutputFiles(tag string) (android.Paths, error) {
887 return []android.Path{a.aaptSrcJar}, nil
889 return []android.Path{a.exportPackage}, nil
891 return a.Library.OutputFiles(tag)
894 func (a *AndroidApp) Privileged() bool {
895 return Bool(a.appProperties.Privileged)
898 func (a *AndroidApp) IsNativeCoverageNeeded(ctx android.BaseModuleContext) bool {
902 func (a *AndroidApp) SetPreventInstall() {
903 a.appProperties.PreventInstall = true
906 func (a *AndroidApp) MarkAsCoverageVariant(coverage bool) {
907 a.appProperties.IsCoverageVariant = coverage
910 func (a *AndroidApp) EnableCoverageIfNeeded() {}
962 func (a *AndroidTest) InstallInTestcases() bool {
966 func (a *AndroidTest) GenerateAndroidBuildActions(ctx android.ModuleContext) {
968 if a.appTestProperties.Instrumentation_target_package != nil {
969 a.additionalAaptFlags = append(a.additionalAaptFlags,
970 "--rename-instrumentation-target-package "+*a.appTestProperties.Instrumentation_target_package)
971 } else if a.appTestProperties.Instrumentation_for != nil {
973 …manifestPackageName, overridden := ctx.DeviceConfig().OverrideManifestPackageNameFor(*a.appTestPro…
975a.additionalAaptFlags = append(a.additionalAaptFlags, "--rename-instrumentation-target-package "+m…
978 a.generateAndroidBuildActions(ctx)
980 for _, module := range a.testProperties.Test_mainline_modules {
984 testConfig := tradefed.AutoGenInstrumentationTestConfig(ctx, a.testProperties.Test_config,
985a.testProperties.Test_config_template, a.manifestPath, a.testProperties.Test_suites, a.testPropert…
986 a.testConfig = a.FixTestConfig(ctx, testConfig)
987a.extraTestConfigs = android.PathsForModuleSrc(ctx, a.testProperties.Test_options.Extra_test_confi…
988 a.data = android.PathsForModuleSrc(ctx, a.testProperties.Data)
991 func (a *AndroidTest) FixTestConfig(ctx android.ModuleContext, testConfig android.Path) android.Pat…
1002 if ctx.ModuleName() != a.installApkName {
1004 command.FlagWithArg("--test-file-name ", a.installApkName+".apk")
1007 if a.overridableAppProperties.Package_name != nil {
1009 command.FlagWithInput("--manifest ", a.manifestPath).
1010 FlagWithArg("--package-name ", *a.overridableAppProperties.Package_name)
1020 func (a *AndroidTest) DepsMutator(ctx android.BottomUpMutatorContext) {
1021 a.AndroidApp.DepsMutator(ctx)
1024 func (a *AndroidTest) OverridablePropertiesDepsMutator(ctx android.BottomUpMutatorContext) {
1025 a.AndroidApp.OverridablePropertiesDepsMutator(ctx)
1026 if a.appTestProperties.Instrumentation_for != nil {
1030 …ctx.AddVariationDependencies(nil, instrumentationForTag, String(a.appTestProperties.Instrumentatio…
1083 func (a *AndroidTestHelperApp) InstallInTestcases() bool {
1455 func (a *AndroidApp) ConvertWithBp2build(ctx android.TopDownMutatorContext) {
1456 commonAttrs, depLabels := a.convertLibraryAttrsBp2Build(ctx)
1467 manifest := proptools.StringDefault(a.aaptProperties.Manifest, "AndroidManifest.xml")
1472 …for _, dir := range android.PathsWithOptionalDefaultForModuleSrc(ctx, a.aaptProperties.Resource_di…
1478 certificateNamePtr := a.overridableAppProperties.Certificate
1492 a.overridableAppProperties.Package_name,
1503 ctx.CreateBazelTargetModule(props, android.CommonAttributes{Name: a.Name()}, attrs)