Loading android/bazel_handler.go +15 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ import ( "os" "path" "path/filepath" "regexp" "runtime" "sort" "strings" Loading Loading @@ -1054,9 +1055,23 @@ var ( func GetBazelSandwichCqueryRequests(config Config) ([]cqueryKey, error) { result := make([]cqueryKey, 0, len(allowlists.BazelSandwichTargets)) labelRegex := regexp.MustCompile("^@?//([a-zA-Z0-9/_-]+):[a-zA-Z0-9_-]+$") // Note that bazel "targets" are different from soong "targets", the bazel targets are // synonymous with soong modules, and soong targets are a configuration a module is built in. for _, target := range allowlists.BazelSandwichTargets { match := labelRegex.FindStringSubmatch(target.Label) if match == nil { return nil, fmt.Errorf("invalid label, must match `^@?//([a-zA-Z0-9/_-]+):[a-zA-Z0-9_-]+$`: %s", target.Label) } if _, err := os.Stat(absolutePath(match[1])); err != nil { if os.IsNotExist(err) { // Ignore bazel sandwich targets that don't exist. continue } else { return nil, err } } var soongTarget Target if target.Host { soongTarget = config.BuildOSTarget Loading tests/lib.sh +7 −0 Original line number Diff line number Diff line Loading @@ -52,6 +52,10 @@ function copy_directory { cp -R "$REAL_TOP/$dir" "$MOCK_TOP/$parent" } function delete_directory { rm -rf "$MOCK_TOP/$1" } function symlink_file { local file="$1" Loading Loading @@ -138,6 +142,9 @@ function create_mock_bazel { copy_directory build/bazel copy_directory build/bazel_common_rules # This requires pulling more tools into the mock top to build partitions delete_directory build/bazel/examples/partitions symlink_directory packages/modules/common/build symlink_directory prebuilts/bazel symlink_directory prebuilts/clang Loading Loading
android/bazel_handler.go +15 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ import ( "os" "path" "path/filepath" "regexp" "runtime" "sort" "strings" Loading Loading @@ -1054,9 +1055,23 @@ var ( func GetBazelSandwichCqueryRequests(config Config) ([]cqueryKey, error) { result := make([]cqueryKey, 0, len(allowlists.BazelSandwichTargets)) labelRegex := regexp.MustCompile("^@?//([a-zA-Z0-9/_-]+):[a-zA-Z0-9_-]+$") // Note that bazel "targets" are different from soong "targets", the bazel targets are // synonymous with soong modules, and soong targets are a configuration a module is built in. for _, target := range allowlists.BazelSandwichTargets { match := labelRegex.FindStringSubmatch(target.Label) if match == nil { return nil, fmt.Errorf("invalid label, must match `^@?//([a-zA-Z0-9/_-]+):[a-zA-Z0-9_-]+$`: %s", target.Label) } if _, err := os.Stat(absolutePath(match[1])); err != nil { if os.IsNotExist(err) { // Ignore bazel sandwich targets that don't exist. continue } else { return nil, err } } var soongTarget Target if target.Host { soongTarget = config.BuildOSTarget Loading
tests/lib.sh +7 −0 Original line number Diff line number Diff line Loading @@ -52,6 +52,10 @@ function copy_directory { cp -R "$REAL_TOP/$dir" "$MOCK_TOP/$parent" } function delete_directory { rm -rf "$MOCK_TOP/$1" } function symlink_file { local file="$1" Loading Loading @@ -138,6 +142,9 @@ function create_mock_bazel { copy_directory build/bazel copy_directory build/bazel_common_rules # This requires pulling more tools into the mock top to build partitions delete_directory build/bazel/examples/partitions symlink_directory packages/modules/common/build symlink_directory prebuilts/bazel symlink_directory prebuilts/clang Loading