Change some configuration-independent deps from exec config to "no config".
Specifically: - deps on `package_metadata` and `applicable_licenses` attributes (common to all rules). These deps are for license metadata rules consumed by https://github.com/bazelbuild/rules_license. They don't create build actions and don't need to be configured. - deps on `compatible_with` and `restricted_to` attributes (also common to all rules). These are part of a deprecated constraints resolution framework, also don't create build actions, also don't need to be configured. Both of these used the exec config as a placeholder for "don't duplicate these unnecessarily over multiple target configs". [NoConfigTransition](https://github.com/bazelbuild/bazel/blob/4d1dea0ddc0f7e61f8a618edf8fe689b21766bbc/src/main/java/com/google/devtools/build/lib/analysis/config/transitions/NoConfigTransition.java#L43) handles this more directly. Motivation: aside from code cleanup, unblocks katre@'s work on exec platform resolution improvements. When these rules are in the exec configuration they can trigger "no matching exec platform" errors. Which is pointless for them. PiperOrigin-RevId: 663743120 Change-Id: Ibcb482a40c3d59ee176a0374ed0304b2d29a55d4
Showing
- src/main/java/com/google/devtools/build/lib/analysis/BUILD 2 additions, 0 deletionssrc/main/java/com/google/devtools/build/lib/analysis/BUILD
- src/main/java/com/google/devtools/build/lib/analysis/BaseRuleClasses.java 4 additions, 3 deletions...m/google/devtools/build/lib/analysis/BaseRuleClasses.java
- src/main/java/com/google/devtools/build/lib/analysis/config/ExecutionTransitionFactory.java 20 additions, 0 deletions...build/lib/analysis/config/ExecutionTransitionFactory.java
- src/test/java/com/google/devtools/build/lib/query2/cquery/ProtoOutputFormatterCallbackTest.java 5 additions, 2 deletions...d/lib/query2/cquery/ProtoOutputFormatterCallbackTest.java
Please register or sign in to comment