diff options
author | elenairina <elenairina@google.com> | 2017-09-19 13:20:17 +0200 |
---|---|---|
committer | László Csomor <laszlocsomor@google.com> | 2017-09-19 14:45:01 +0200 |
commit | 655a529db693e0d3c89a68ca81fc4858147b90f0 (patch) | |
tree | b6b266a4076e8ea7ebc15e145db36a64b3bfa5a4 /src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkActionFactory.java | |
parent | f20ae6b20816df6a393c6e8352befba9b158fdf4 (diff) |
Expose full compile time jars in Skylark
There are several use cases for using full compile time jars instead of ijars (scala macros cannot use ijar, kotlin dependencies, etc). This change allows creating a provider with or without creating interface jars for compile time, exposing the right full/interface jars on target[JavaInfo].compile_jars and target[JavaInfo].full_compile_jars.
For more details see https://github.com/bazelbuild/bazel/issues/3528.
Fixes #3528
RELNOTES: java_common.create_provider is now supported with creating ijars by default. This introduces incompatibilities for existing users. Please set use_ijar=False if you don't want to use ijars.
PiperOrigin-RevId: 169222793
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkActionFactory.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkActionFactory.java | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkActionFactory.java b/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkActionFactory.java index be6d6348cd..8a8ccc8ec1 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkActionFactory.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/skylark/SkylarkActionFactory.java @@ -410,6 +410,13 @@ public class SkylarkActionFactory implements SkylarkValue { envUnchecked, executionRequirementsUnchecked, inputManifestsUnchecked, builder); } + /** + * Builds and registers a spawn action on the rule context. + */ + public void buildAndRegisterSpawnAction(SpawnAction.Builder action) { + ruleContext.registerAction(action.build(ruleContext)); + } + @SkylarkCallable( name = "run_shell", doc = "Creates an action that runs a shell command.", |