diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-04-01 01:44:56 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-04-01 01:44:56 +0000 |
commit | 1dccae6bed03a28eed99e01e9dfee97e43f1d70f (patch) | |
tree | 49287524def0b6733aa2d549f47f5ff8bf4c2eec | |
parent | a6e6a08e9b6a4215a21a5c93e6eee1f6e3bc68b6 (diff) | |
parent | 15fc2294389d8d1d8f6c2247a57425d299033d9c (diff) | |
download | soong-android13-mainline-art-release.tar.gz |
Snap for 9867090 from 15fc2294389d8d1d8f6c2247a57425d299033d9c to mainline-art-releaseaml_art_331813100aml_art_331813010android13-mainline-art-release
Change-Id: Ifdd88f93dea48f78a5616d6892aa3bc95e253bf7
-rw-r--r-- | android/Android.bp | 1 | ||||
-rw-r--r-- | android/filegroup.go | 25 | ||||
-rw-r--r-- | android/filegroup_test.go | 26 | ||||
-rw-r--r-- | scripts/Android.bp | 6 |
4 files changed, 56 insertions, 2 deletions
diff --git a/android/Android.bp b/android/Android.bp index 65332b2d8..c0a35accd 100644 --- a/android/Android.bp +++ b/android/Android.bp @@ -106,6 +106,7 @@ bootstrap_go_package { "depset_test.go", "deptag_test.go", "expand_test.go", + "filegroup_test.go", "fixture_test.go", "gen_notice_test.go", "license_kind_test.go", diff --git a/android/filegroup.go b/android/filegroup.go index 50356d1c3..a2e69efa4 100644 --- a/android/filegroup.go +++ b/android/filegroup.go @@ -23,13 +23,18 @@ import ( ) func init() { - RegisterModuleType("filegroup", FileGroupFactory) + RegisterFilegroupBuildComponents(InitRegistrationContext) } var PrepareForTestWithFilegroup = FixtureRegisterWithContext(func(ctx RegistrationContext) { - ctx.RegisterModuleType("filegroup", FileGroupFactory) + RegisterFilegroupBuildComponents(ctx) }) +func RegisterFilegroupBuildComponents(ctx RegistrationContext) { + ctx.RegisterModuleType("filegroup", FileGroupFactory) + ctx.RegisterModuleType("filegroup_defaults", FileGroupDefaultsFactory) +} + // IsFilegroup checks that a module is a filegroup type func IsFilegroup(ctx bazel.OtherModuleContext, m blueprint.Module) bool { return ctx.OtherModuleType(m) == "filegroup" @@ -97,6 +102,7 @@ type fileGroupProperties struct { type fileGroup struct { ModuleBase BazelModuleBase + DefaultableModuleBase properties fileGroupProperties srcs Paths } @@ -111,6 +117,7 @@ func FileGroupFactory() Module { module.AddProperties(&module.properties) InitAndroidModule(module) InitBazelModule(module) + InitDefaultableModule(module) return module } @@ -161,3 +168,17 @@ func (fg *fileGroup) MakeVars(ctx MakeVarsModuleContext) { ctx.StrictRaw(makeVar, strings.Join(fg.srcs.Strings(), " ")) } } + +// Defaults +type FileGroupDefaults struct { + ModuleBase + DefaultsModuleBase +} + +func FileGroupDefaultsFactory() Module { + module := &FileGroupDefaults{} + module.AddProperties(&fileGroupProperties{}) + InitDefaultsModule(module) + + return module +} diff --git a/android/filegroup_test.go b/android/filegroup_test.go new file mode 100644 index 000000000..670037d56 --- /dev/null +++ b/android/filegroup_test.go @@ -0,0 +1,26 @@ +package android + +import ( + "testing" +) + +func TestFilegroupDefaults(t *testing.T) { + bp := FixtureAddTextFile("p/Android.bp", ` + filegroup_defaults { + name: "defaults", + visibility: ["//x"], + } + filegroup { + name: "foo", + defaults: ["defaults"], + visibility: ["//y"], + } + `) + result := GroupFixturePreparers( + PrepareForTestWithFilegroup, + PrepareForTestWithDefaults, + PrepareForTestWithVisibility, + bp).RunTest(t) + rules := effectiveVisibilityRules(result.Config, qualifiedModuleName{pkg: "p", name: "foo"}) + AssertDeepEquals(t, "visibility", []string{"//x", "//y"}, rules.Strings()) +} diff --git a/scripts/Android.bp b/scripts/Android.bp index a37d2597b..814bd5753 100644 --- a/scripts/Android.bp +++ b/scripts/Android.bp @@ -203,3 +203,9 @@ sh_binary_host { name: "list_image", src: "list_image.sh", } + +filegroup { + name: "rustfmt.toml", + srcs: ["rustfmt.toml"], + visibility: ["//visibility:public"], +} |