summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--aconfig/cc_aconfig_library.go12
-rw-r--r--android/config.go14
-rw-r--r--cc/binary.go4
-rw-r--r--cc/bp2build.go12
-rw-r--r--cc/cc.go4
-rw-r--r--cc/library.go8
-rw-r--r--cc/library_headers.go4
-rw-r--r--cc/object.go4
-rw-r--r--cmd/soong_build/main.go2
-rw-r--r--java/support_libraries.go2
-rw-r--r--ui/build/config.go8
-rw-r--r--ui/build/soong.go8
12 files changed, 45 insertions, 37 deletions
diff --git a/aconfig/cc_aconfig_library.go b/aconfig/cc_aconfig_library.go
index 0583befc0..5b0fb4a82 100644
--- a/aconfig/cc_aconfig_library.go
+++ b/aconfig/cc_aconfig_library.go
@@ -143,6 +143,7 @@ func (this *CcAconfigLibraryCallbacks) GeneratorBuildActions(ctx cc.ModuleContex
}
type bazelCcAconfigLibraryAttributes struct {
+ cc.SdkAttributes
Aconfig_declarations bazel.LabelAttribute
Dynamic_deps bazel.LabelListAttribute
}
@@ -154,12 +155,13 @@ type bazelCcAconfigLibraryAttributes struct {
// module type returns a cc library and the bp2build conversion is called on the
// cc library type.
-func (this *CcAconfigLibraryCallbacks) GeneratorBp2build(ctx android.Bp2buildMutatorContext) bool {
+func (this *CcAconfigLibraryCallbacks) GeneratorBp2build(ctx android.Bp2buildMutatorContext, module *cc.Module) bool {
if ctx.ModuleType() != "cc_aconfig_library" {
return false
}
attrs := bazelCcAconfigLibraryAttributes{
+ SdkAttributes: cc.Bp2BuildParseSdkAttributes(module),
Aconfig_declarations: *bazel.MakeLabelAttribute(android.BazelLabelForModuleDepSingle(ctx, this.properties.Aconfig_declarations).Label),
Dynamic_deps: bazel.MakeLabelListAttribute(android.BazelLabelForModuleDeps(ctx, []string{baseLibDep})),
}
@@ -168,6 +170,12 @@ func (this *CcAconfigLibraryCallbacks) GeneratorBp2build(ctx android.Bp2buildMut
Bzl_load_location: "//build/bazel/rules/cc:cc_aconfig_library.bzl",
}
- ctx.CreateBazelTargetModule(props, android.CommonAttributes{Name: ctx.ModuleName()}, &attrs)
+ ctx.CreateBazelTargetModule(
+ props,
+ android.CommonAttributes{
+ Name: ctx.ModuleName(),
+ Tags: android.ApexAvailableTagsWithoutTestApexes(ctx, module),
+ },
+ &attrs)
return true
}
diff --git a/android/config.go b/android/config.go
index 8ad53e3f3..c6d8d9f82 100644
--- a/android/config.go
+++ b/android/config.go
@@ -99,7 +99,7 @@ type CmdArgs struct {
UseBazelProxy bool
- BuildFromTextStub bool
+ BuildFromSourceStub bool
EnsureAllowlistIntegrity bool
}
@@ -337,9 +337,9 @@ type config struct {
// unix sockets, instead of spawning Bazel as a subprocess.
UseBazelProxy bool
- // If buildFromTextStub is true then the Java API stubs are
- // built from the signature text files, not the source Java files.
- buildFromTextStub bool
+ // If buildFromSourceStub is true then the Java API stubs are
+ // built from the source Java files, not the signature text files.
+ buildFromSourceStub bool
// If ensureAllowlistIntegrity is true, then the presence of any allowlisted
// modules that aren't mixed-built for at least one variant will cause a build
@@ -556,7 +556,7 @@ func NewConfig(cmdArgs CmdArgs, availableEnv map[string]string) (Config, error)
MultitreeBuild: cmdArgs.MultitreeBuild,
UseBazelProxy: cmdArgs.UseBazelProxy,
- buildFromTextStub: cmdArgs.BuildFromTextStub,
+ buildFromSourceStub: cmdArgs.BuildFromSourceStub,
}
config.deviceConfig = &deviceConfig{
@@ -2071,11 +2071,11 @@ func (c *config) BuildFromTextStub() bool {
// TODO: b/302320354 - Remove the coverage build specific logic once the
// robust solution for handling native properties in from-text stub build
// is implemented.
- return c.buildFromTextStub && !c.JavaCoverageEnabled()
+ return !c.buildFromSourceStub && !c.JavaCoverageEnabled()
}
func (c *config) SetBuildFromTextStub(b bool) {
- c.buildFromTextStub = b
+ c.buildFromSourceStub = !b
c.productVariables.Build_from_text_stub = boolPtr(b)
}
diff --git a/cc/binary.go b/cc/binary.go
index 0722f8110..0f0560569 100644
--- a/cc/binary.go
+++ b/cc/binary.go
@@ -651,7 +651,7 @@ func binaryBp2buildAttrs(ctx android.Bp2buildMutatorContext, m *Module) binaryAt
Features: baseAttrs.features,
- sdkAttributes: bp2BuildParseSdkAttributes(m),
+ SdkAttributes: Bp2BuildParseSdkAttributes(m),
Native_coverage: baseAttrs.Native_coverage,
}
@@ -708,7 +708,7 @@ type binaryAttributes struct {
Features bazel.StringListAttribute
- sdkAttributes
+ SdkAttributes
tidyAttributes
diff --git a/cc/bp2build.go b/cc/bp2build.go
index 7ae8d8981..919b4d446 100644
--- a/cc/bp2build.go
+++ b/cc/bp2build.go
@@ -85,7 +85,7 @@ type staticOrSharedAttributes struct {
Features bazel.StringListAttribute
- sdkAttributes
+ SdkAttributes
tidyAttributes
}
@@ -1185,7 +1185,7 @@ func bp2buildCcAidlLibrary(
implementationDynamicDeps := linkerAttrs.dynamicDeps.Clone()
implementationDynamicDeps.Append(linkerAttrs.implementationDynamicDeps)
- sdkAttrs := bp2BuildParseSdkAttributes(m)
+ sdkAttrs := Bp2BuildParseSdkAttributes(m)
exportedIncludes := bp2BuildParseExportedIncludes(ctx, m, &compilerAttrs.includes)
includeAttrs := includesAttributes{
@@ -1207,7 +1207,7 @@ func bp2buildCcAidlLibrary(
Implementation_deps: *implementationDeps,
Implementation_dynamic_deps: *implementationDynamicDeps,
Tags: apexAvailableTags,
- sdkAttributes: sdkAttrs,
+ SdkAttributes: sdkAttrs,
includesAttributes: includeAttrs,
},
)
@@ -1222,14 +1222,14 @@ func bp2buildCcAidlLibrary(
return nil
}
-func bp2BuildParseSdkAttributes(module *Module) sdkAttributes {
- return sdkAttributes{
+func Bp2BuildParseSdkAttributes(module *Module) SdkAttributes {
+ return SdkAttributes{
Sdk_version: module.Properties.Sdk_version,
Min_sdk_version: module.Properties.Min_sdk_version,
}
}
-type sdkAttributes struct {
+type SdkAttributes struct {
Sdk_version *string
Min_sdk_version *string
}
diff --git a/cc/cc.go b/cc/cc.go
index 8c248f934..814a66cda 100644
--- a/cc/cc.go
+++ b/cc/cc.go
@@ -589,7 +589,7 @@ type Generator interface {
GeneratorFlags(ctx ModuleContext, flags Flags, deps PathDeps) Flags
GeneratorSources(ctx ModuleContext) GeneratedSource
GeneratorBuildActions(ctx ModuleContext, flags Flags, deps PathDeps)
- GeneratorBp2build(ctx android.Bp2buildMutatorContext) bool
+ GeneratorBp2build(ctx android.Bp2buildMutatorContext, module *Module) bool
}
// compiler is the interface for a compiler helper object. Different module decorators may implement
@@ -4218,7 +4218,7 @@ func (c *Module) ConvertWithBp2build(ctx android.Bp2buildMutatorContext) {
if len(c.generators) > 0 {
allConverted := true
for _, generator := range c.generators {
- allConverted = allConverted && generator.GeneratorBp2build(ctx)
+ allConverted = allConverted && generator.GeneratorBp2build(ctx, c)
}
if allConverted {
return
diff --git a/cc/library.go b/cc/library.go
index 21615121d..b7688f716 100644
--- a/cc/library.go
+++ b/cc/library.go
@@ -286,7 +286,7 @@ type ccAidlLibraryAttributes struct {
Implementation_dynamic_deps bazel.LabelListAttribute
Tags bazel.StringListAttribute
- sdkAttributes
+ SdkAttributes
includesAttributes
}
@@ -347,7 +347,7 @@ func libraryBp2Build(ctx android.Bp2buildMutatorContext, m *Module) {
Whole_archive_deps: *linkerAttrs.wholeArchiveDeps.Clone().Append(staticAttrs.Whole_archive_deps),
System_dynamic_deps: *linkerAttrs.systemDynamicDeps.Clone().Append(staticAttrs.System_dynamic_deps),
Runtime_deps: linkerAttrs.runtimeDeps,
- sdkAttributes: bp2BuildParseSdkAttributes(m),
+ SdkAttributes: Bp2BuildParseSdkAttributes(m),
Native_coverage: baseAttributes.Native_coverage,
Additional_compiler_inputs: compilerAttrs.additionalCompilerInputs,
}
@@ -375,7 +375,7 @@ func libraryBp2Build(ctx android.Bp2buildMutatorContext, m *Module) {
Implementation_whole_archive_deps: linkerAttrs.implementationWholeArchiveDeps,
System_dynamic_deps: *linkerAttrs.systemDynamicDeps.Clone().Append(sharedAttrs.System_dynamic_deps),
Runtime_deps: linkerAttrs.runtimeDeps,
- sdkAttributes: bp2BuildParseSdkAttributes(m),
+ SdkAttributes: Bp2BuildParseSdkAttributes(m),
Native_coverage: baseAttributes.Native_coverage,
Additional_compiler_inputs: compilerAttrs.additionalCompilerInputs,
}
@@ -2861,7 +2861,7 @@ func sharedOrStaticLibraryBp2Build(ctx android.Bp2buildMutatorContext, module *M
Whole_archive_deps: linkerAttrs.wholeArchiveDeps,
Implementation_whole_archive_deps: linkerAttrs.implementationWholeArchiveDeps,
System_dynamic_deps: linkerAttrs.systemDynamicDeps,
- sdkAttributes: bp2BuildParseSdkAttributes(module),
+ SdkAttributes: Bp2BuildParseSdkAttributes(module),
Runtime_deps: linkerAttrs.runtimeDeps,
Native_coverage: baseAttributes.Native_coverage,
Additional_compiler_inputs: compilerAttrs.additionalCompilerInputs,
diff --git a/cc/library_headers.go b/cc/library_headers.go
index 3f8be467b..2e5a19516 100644
--- a/cc/library_headers.go
+++ b/cc/library_headers.go
@@ -122,7 +122,7 @@ type bazelCcLibraryHeadersAttributes struct {
Export_absolute_includes bazel.StringListAttribute
Export_system_includes bazel.StringListAttribute
Deps bazel.LabelListAttribute
- sdkAttributes
+ SdkAttributes
}
func libraryHeadersBp2Build(ctx android.Bp2buildMutatorContext, module *Module) {
@@ -138,7 +138,7 @@ func libraryHeadersBp2Build(ctx android.Bp2buildMutatorContext, module *Module)
Export_system_includes: exportedIncludes.SystemIncludes,
Deps: linkerAttrs.deps,
Hdrs: baseAttributes.hdrs,
- sdkAttributes: bp2BuildParseSdkAttributes(module),
+ SdkAttributes: Bp2BuildParseSdkAttributes(module),
}
props := bazel.BazelTargetModuleProperties{
diff --git a/cc/object.go b/cc/object.go
index a3000e06e..d6eb369a5 100644
--- a/cc/object.go
+++ b/cc/object.go
@@ -151,7 +151,7 @@ type bazelObjectAttributes struct {
Stl *string
Linker_script bazel.LabelAttribute
Crt *bool
- sdkAttributes
+ SdkAttributes
}
// objectBp2Build is the bp2build converter from cc_object modules to the
@@ -218,7 +218,7 @@ func objectBp2Build(ctx android.Bp2buildMutatorContext, m *Module) {
Stl: compilerAttrs.stl,
Linker_script: linkerScript,
Crt: m.linker.(*objectLinker).Properties.Crt,
- sdkAttributes: bp2BuildParseSdkAttributes(m),
+ SdkAttributes: Bp2BuildParseSdkAttributes(m),
}
props := bazel.BazelTargetModuleProperties{
diff --git a/cmd/soong_build/main.go b/cmd/soong_build/main.go
index d20847bb2..53f5d8036 100644
--- a/cmd/soong_build/main.go
+++ b/cmd/soong_build/main.go
@@ -84,7 +84,7 @@ func init() {
flag.BoolVar(&cmdlineArgs.BazelMode, "bazel-mode", false, "use bazel for analysis of certain modules")
flag.BoolVar(&cmdlineArgs.BazelModeStaging, "bazel-mode-staging", false, "use bazel for analysis of certain near-ready modules")
flag.BoolVar(&cmdlineArgs.UseBazelProxy, "use-bazel-proxy", false, "communicate with bazel using unix socket proxy instead of spawning subprocesses")
- flag.BoolVar(&cmdlineArgs.BuildFromTextStub, "build-from-text-stub", false, "build Java stubs from API text files instead of source files")
+ flag.BoolVar(&cmdlineArgs.BuildFromSourceStub, "build-from-source-stub", false, "build Java stubs from source files instead of API text files")
flag.BoolVar(&cmdlineArgs.EnsureAllowlistIntegrity, "ensure-allowlist-integrity", false, "verify that allowlisted modules are mixed-built")
// Flags that probably shouldn't be flags of soong_build, but we haven't found
// the time to remove them yet
diff --git a/java/support_libraries.go b/java/support_libraries.go
index af7c3c2a0..c483fc17a 100644
--- a/java/support_libraries.go
+++ b/java/support_libraries.go
@@ -32,7 +32,7 @@ func supportLibrariesMakeVarsProvider(ctx android.MakeVarsContext) {
dir := ctx.ModuleDir(module)
switch {
case strings.HasPrefix(dir, "prebuilts/sdk/current/extras"),
- dir == "prebuilts/sdk/current/androidx",
+ strings.HasPrefix(dir, "prebuilts/sdk/current/androidx"),
dir == "prebuilts/sdk/current/car",
dir == "prebuilts/sdk/current/optional",
dir == "prebuilts/sdk/current/support":
diff --git a/ui/build/config.go b/ui/build/config.go
index 5925b283c..eae379f96 100644
--- a/ui/build/config.go
+++ b/ui/build/config.go
@@ -85,7 +85,7 @@ type configImpl struct {
searchApiDir bool // Scan the Android.bp files generated in out/api_surfaces
skipMetricsUpload bool
buildStartedTime int64 // For metrics-upload-only - manually specify a build-started time
- buildFromTextStub bool
+ buildFromSourceStub bool
ensureAllowlistIntegrity bool // For CI builds - make sure modules are mixed-built
bazelExitCode int32 // For b runs - necessary for updating NonZeroExit
besId string // For b runs, to identify the BuildEventService logs
@@ -808,8 +808,8 @@ func (c *configImpl) parseArgs(ctx Context, args []string) {
} else {
ctx.Fatalf("unknown option for ninja_weight_source: %s", source)
}
- } else if arg == "--build-from-text-stub" {
- c.buildFromTextStub = true
+ } else if arg == "--build-from-source-stub" {
+ c.buildFromSourceStub = true
} else if strings.HasPrefix(arg, "--build-command=") {
buildCmd := strings.TrimPrefix(arg, "--build-command=")
// remove quotations
@@ -1157,7 +1157,7 @@ func (c *configImpl) SkipConfig() bool {
}
func (c *configImpl) BuildFromTextStub() bool {
- return c.buildFromTextStub
+ return !c.buildFromSourceStub
}
func (c *configImpl) TargetProduct() string {
diff --git a/ui/build/soong.go b/ui/build/soong.go
index ac9bf3a60..18eee75ac 100644
--- a/ui/build/soong.go
+++ b/ui/build/soong.go
@@ -188,8 +188,8 @@ func (pb PrimaryBuilderFactory) primaryBuilderInvocation() bootstrap.PrimaryBuil
if pb.config.multitreeBuild {
commonArgs = append(commonArgs, "--multitree-build")
}
- if pb.config.buildFromTextStub {
- commonArgs = append(commonArgs, "--build-from-text-stub")
+ if pb.config.buildFromSourceStub {
+ commonArgs = append(commonArgs, "--build-from-source-stub")
}
commonArgs = append(commonArgs, "-l", filepath.Join(pb.config.FileListDir(), "Android.bp.list"))
@@ -305,8 +305,8 @@ func bootstrapBlueprint(ctx Context, config Config) {
if config.MultitreeBuild() {
mainSoongBuildExtraArgs = append(mainSoongBuildExtraArgs, "--multitree-build")
}
- if config.buildFromTextStub {
- mainSoongBuildExtraArgs = append(mainSoongBuildExtraArgs, "--build-from-text-stub")
+ if config.buildFromSourceStub {
+ mainSoongBuildExtraArgs = append(mainSoongBuildExtraArgs, "--build-from-source-stub")
}
if config.ensureAllowlistIntegrity {
mainSoongBuildExtraArgs = append(mainSoongBuildExtraArgs, "--ensure-allowlist-integrity")