diff options
author | Sergio Campama <kaipi@google.com> | 2016-09-19 21:08:50 +0000 |
---|---|---|
committer | Laszlo Csomor <laszlocsomor@google.com> | 2016-09-20 06:46:41 +0000 |
commit | 01a9bd1579b0a6155ee9364b55f2a3b868f8d8bf (patch) | |
tree | 9bbc7e484ea52c6a374b1aee525c08e728830018 /src/main | |
parent | 6e7c3a46ae0fd84369664636407d406368318869 (diff) |
Enable the generation of Objc protos in whichever host machine it is running.
--
MOS_MIGRATED_REVID=133629682
Diffstat (limited to 'src/main')
3 files changed, 7 insertions, 7 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProtoLibraryRule.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProtoLibraryRule.java index 2ed8d58eaf..8bf1c8f6aa 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProtoLibraryRule.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProtoLibraryRule.java @@ -106,7 +106,7 @@ public class ObjcProtoLibraryRule implements RuleDefinition { .cfg(HOST)) .add( attr(PROTO_COMPILER_ATTR, LABEL) - .allowedFileTypes(FileType.of(".py")) + .allowedFileTypes(FileType.of(".py"), FileType.of(".sh")) .cfg(HOST) .singleArtifact() .value( @@ -114,7 +114,7 @@ public class ObjcProtoLibraryRule implements RuleDefinition { @Override public Object getDefault(AttributeMap rule) { return rule.isAttributeValueExplicitlySpecified(PORTABLE_PROTO_FILTERS_ATTR) - ? env.getToolsLabel("//tools/objc:protobuf_compiler") + ? env.getToolsLabel("//tools/objc:protobuf_compiler_wrapper") : env.getToolsLabel("//tools/objc:compile_protos"); } })) diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcRuleClasses.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcRuleClasses.java index 103fe54532..54edc474ed 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcRuleClasses.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcRuleClasses.java @@ -882,10 +882,10 @@ public class ObjcRuleClasses { .add(attr("$dummy_lib", LABEL).value(env.getToolsLabel("//tools/objc:dummy_lib"))) .add( attr(PROTO_COMPILER_ATTR, LABEL) - .allowedFileTypes(FileType.of(".py")) + .allowedFileTypes(FileType.of(".sh")) .cfg(HOST) .singleArtifact() - .value(env.getToolsLabel("//tools/objc:protobuf_compiler"))) + .value(env.getToolsLabel("//tools/objc:protobuf_compiler_wrapper"))) .add( attr(PROTO_COMPILER_SUPPORT_ATTR, LABEL) .legacyAllowAnyFileType() diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java index 8c4e49671f..f17e6f6c74 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java @@ -30,6 +30,7 @@ import com.google.devtools.build.lib.analysis.RuleConfiguredTarget.Mode; import com.google.devtools.build.lib.analysis.RuleContext; import com.google.devtools.build.lib.analysis.actions.CustomCommandLine; import com.google.devtools.build.lib.analysis.actions.FileWriteAction; +import com.google.devtools.build.lib.analysis.actions.SpawnAction; import com.google.devtools.build.lib.analysis.config.BuildConfiguration; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.cmdline.LabelSyntaxException; @@ -480,7 +481,7 @@ final class ProtobufSupport { false)); ruleContext.registerAction( - ObjcRuleClasses.spawnOnDarwinActionBuilder() + new SpawnAction.Builder() .setMnemonic("GenObjcBundledProtos") .addInput(attributes.getProtoCompiler()) .addInputs(attributes.getProtoCompilerSupport()) @@ -489,7 +490,7 @@ final class ProtobufSupport { .addInputs(inputProtos) .addOutputs(getGeneratedProtoOutputs(outputProtos, ".pbobjc.h")) .addOutputs(getGeneratedProtoOutputs(outputProtos, ".pbobjc.m")) - .setExecutable(new PathFragment("/usr/bin/python")) + .setExecutable(attributes.getProtoCompiler().getExecPath()) .setCommandLine(getGenerationCommandLine(protoInputsFile)) .build(ruleContext)); } @@ -510,7 +511,6 @@ final class ProtobufSupport { private CustomCommandLine getGenerationCommandLine(Artifact protoInputsFile) { return new CustomCommandLine.Builder() - .add(attributes.getProtoCompiler().getExecPathString()) .add("--input-file-list") .add(protoInputsFile.getExecPathString()) .add("--output-dir") |