| // Copyright 2025 The Bazel Authors. All rights reserved. |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| |
| // After updating this file, create a new version of project_proto.scl with: |
| // |
| // $ blaze run |
| // //third_party/bazel/src/main/protobuf/project:foo_proto_scl_update |
| |
| edition = "2023"; |
| |
| package build_project; |
| |
| import "devtools/starlark/protolark/proto/protolark.proto"; |
| import "src/main/protobuf/project/buildable_unit.proto"; |
| import "src/main/protobuf/project/enforcement_policy.proto"; |
| |
| // Configuration for a Blaze project. |
| message Project { |
| string name = 1; |
| |
| // Targets to be built and tested with a set of build or test flags. |
| // Cloned from BlueprintFile.buildable_unit. |
| repeated BuildableUnit buildable_units = 3 |
| [(.protolark.used_in_blaze) = true]; |
| |
| // For blaze. Interactive build enforcement policy. Defaults to WARN. |
| EnforcementPolicy enforcement_policy = 4 [(.protolark.used_in_blaze) = true]; |
| |
| // The packages that make up this project. Expected syntax: |
| // ["//foo", "//bar/baz", ...]. |
| // |
| // Blaze uses this to remove flags from build graph dependencies for flags |
| // that are defined as "project-only scoe". |
| repeated string project_directories = 5 [(.protolark.used_in_blaze) = true]; |
| |
| // --configs that are always allowed. Permit all flags that derive from any |
| // --config set here. |
| repeated string always_allowed_configs = 6 |
| [(.protolark.used_in_blaze) = true]; |
| } |