Loading android/defs.go +9 −1 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import ( var ( pctx = NewPackageContext("android/soong/android") exportedVars = NewExportedVariables(pctx) cpPreserveSymlinks = pctx.VariableConfigMethod("cpPreserveSymlinks", Config.CpPreserveSymlinksFlags) Loading Loading @@ -128,6 +129,13 @@ func init() { pctx.VariableFunc("RBEWrapper", func(ctx PackageVarContext) string { return ctx.Config().RBEWrapper() }) exportedVars.ExportStringList("NeverAllowNotInIncludeDir", neverallowNotInIncludeDir) exportedVars.ExportStringList("NeverAllowNoUseIncludeDir", neverallowNoUseIncludeDir) } func BazelCcToolchainVars(config Config) string { return BazelToolchainVars(config, exportedVars) } var ( Loading android/neverallow.go +8 −6 Original line number Diff line number Diff line Loading @@ -74,8 +74,8 @@ func createBp2BuildRule() Rule { "supported for custom conversion, use allowlists.go instead.") } func createIncludeDirsRules() []Rule { notInIncludeDir := []string{ var ( neverallowNotInIncludeDir = []string{ "art", "art/libnativebridge", "art/libnativeloader", Loading @@ -91,7 +91,7 @@ func createIncludeDirsRules() []Rule { "external/vixl", "external/wycheproof", } noUseIncludeDir := []string{ neverallowNoUseIncludeDir = []string{ "frameworks/av/apex", "frameworks/av/tools", "frameworks/native/cmds", Loading @@ -103,10 +103,12 @@ func createIncludeDirsRules() []Rule { "system/libfmq", "system/libvintf", } ) rules := make([]Rule, 0, len(notInIncludeDir)+len(noUseIncludeDir)) func createIncludeDirsRules() []Rule { rules := make([]Rule, 0, len(neverallowNotInIncludeDir)+len(neverallowNoUseIncludeDir)) for _, path := range notInIncludeDir { for _, path := range neverallowNotInIncludeDir { rule := NeverAllow(). WithMatcher("include_dirs", StartsWith(path+"/")). Loading @@ -116,7 +118,7 @@ func createIncludeDirsRules() []Rule { rules = append(rules, rule) } for _, path := range noUseIncludeDir { for _, path := range neverallowNoUseIncludeDir { rule := NeverAllow().In(path+"/").WithMatcher("include_dirs", isSetMatcherInstance). Because("include_dirs is deprecated, all usages of them in '" + path + "' have been migrated" + " to use alternate mechanisms and so can no longer be used.") Loading bp2build/conversion.go +3 −0 Original line number Diff line number Diff line Loading @@ -23,6 +23,9 @@ type BazelFile struct { func CreateSoongInjectionFiles(cfg android.Config, metrics CodegenMetrics) []BazelFile { var files []BazelFile files = append(files, newFile("android", GeneratedBuildFileName, "")) // Creates a //cc_toolchain package. files = append(files, newFile("android", "constants.bzl", android.BazelCcToolchainVars(cfg))) files = append(files, newFile("cc_toolchain", GeneratedBuildFileName, "")) // Creates a //cc_toolchain package. files = append(files, newFile("cc_toolchain", "constants.bzl", cc_config.BazelCcToolchainVars(cfg))) Loading bp2build/conversion_test.go +8 −0 Original line number Diff line number Diff line Loading @@ -87,6 +87,14 @@ func TestCreateBazelFiles_Bp2Build_CreatesDefaultFiles(t *testing.T) { files := CreateSoongInjectionFiles(testConfig, CreateCodegenMetrics()) expectedFilePaths := []bazelFilepath{ { dir: "android", basename: GeneratedBuildFileName, }, { dir: "android", basename: "constants.bzl", }, { dir: "cc_toolchain", basename: GeneratedBuildFileName, Loading Loading
android/defs.go +9 −1 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import ( var ( pctx = NewPackageContext("android/soong/android") exportedVars = NewExportedVariables(pctx) cpPreserveSymlinks = pctx.VariableConfigMethod("cpPreserveSymlinks", Config.CpPreserveSymlinksFlags) Loading Loading @@ -128,6 +129,13 @@ func init() { pctx.VariableFunc("RBEWrapper", func(ctx PackageVarContext) string { return ctx.Config().RBEWrapper() }) exportedVars.ExportStringList("NeverAllowNotInIncludeDir", neverallowNotInIncludeDir) exportedVars.ExportStringList("NeverAllowNoUseIncludeDir", neverallowNoUseIncludeDir) } func BazelCcToolchainVars(config Config) string { return BazelToolchainVars(config, exportedVars) } var ( Loading
android/neverallow.go +8 −6 Original line number Diff line number Diff line Loading @@ -74,8 +74,8 @@ func createBp2BuildRule() Rule { "supported for custom conversion, use allowlists.go instead.") } func createIncludeDirsRules() []Rule { notInIncludeDir := []string{ var ( neverallowNotInIncludeDir = []string{ "art", "art/libnativebridge", "art/libnativeloader", Loading @@ -91,7 +91,7 @@ func createIncludeDirsRules() []Rule { "external/vixl", "external/wycheproof", } noUseIncludeDir := []string{ neverallowNoUseIncludeDir = []string{ "frameworks/av/apex", "frameworks/av/tools", "frameworks/native/cmds", Loading @@ -103,10 +103,12 @@ func createIncludeDirsRules() []Rule { "system/libfmq", "system/libvintf", } ) rules := make([]Rule, 0, len(notInIncludeDir)+len(noUseIncludeDir)) func createIncludeDirsRules() []Rule { rules := make([]Rule, 0, len(neverallowNotInIncludeDir)+len(neverallowNoUseIncludeDir)) for _, path := range notInIncludeDir { for _, path := range neverallowNotInIncludeDir { rule := NeverAllow(). WithMatcher("include_dirs", StartsWith(path+"/")). Loading @@ -116,7 +118,7 @@ func createIncludeDirsRules() []Rule { rules = append(rules, rule) } for _, path := range noUseIncludeDir { for _, path := range neverallowNoUseIncludeDir { rule := NeverAllow().In(path+"/").WithMatcher("include_dirs", isSetMatcherInstance). Because("include_dirs is deprecated, all usages of them in '" + path + "' have been migrated" + " to use alternate mechanisms and so can no longer be used.") Loading
bp2build/conversion.go +3 −0 Original line number Diff line number Diff line Loading @@ -23,6 +23,9 @@ type BazelFile struct { func CreateSoongInjectionFiles(cfg android.Config, metrics CodegenMetrics) []BazelFile { var files []BazelFile files = append(files, newFile("android", GeneratedBuildFileName, "")) // Creates a //cc_toolchain package. files = append(files, newFile("android", "constants.bzl", android.BazelCcToolchainVars(cfg))) files = append(files, newFile("cc_toolchain", GeneratedBuildFileName, "")) // Creates a //cc_toolchain package. files = append(files, newFile("cc_toolchain", "constants.bzl", cc_config.BazelCcToolchainVars(cfg))) Loading
bp2build/conversion_test.go +8 −0 Original line number Diff line number Diff line Loading @@ -87,6 +87,14 @@ func TestCreateBazelFiles_Bp2Build_CreatesDefaultFiles(t *testing.T) { files := CreateSoongInjectionFiles(testConfig, CreateCodegenMetrics()) expectedFilePaths := []bazelFilepath{ { dir: "android", basename: GeneratedBuildFileName, }, { dir: "android", basename: "constants.bzl", }, { dir: "cc_toolchain", basename: GeneratedBuildFileName, Loading