diff options
author | 2016-11-15 18:49:09 +0000 | |
---|---|---|
committer | 2016-11-16 15:56:32 +0000 | |
commit | 88bfe858aaac9138b7d0341982ca4150474479c9 (patch) | |
tree | 55ba337a9eb5e7a35f91ef7805c50080118f3f1e /src/main/java/com/google/devtools/build/lib/rules/objc | |
parent | e134f794337054562d3119b2bf151fc83fcd9a66 (diff) |
Description redacted.
--
MOS_MIGRATED_REVID=139219934
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/objc')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/objc/LegacyCompilationSupport.java | 4 | ||||
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCompileAction.java | 58 |
2 files changed, 6 insertions, 56 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/LegacyCompilationSupport.java b/src/main/java/com/google/devtools/build/lib/rules/objc/LegacyCompilationSupport.java index 2d564e7dd9..f7fdcdfb62 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/LegacyCompilationSupport.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/LegacyCompilationSupport.java @@ -489,13 +489,12 @@ public class LegacyCompilationSupport extends CompilationSupport { appleConfiguration, appleConfiguration.getSingleArchPlatform()) .setDotdPruningPlan(objcConfiguration.getDotdPruningPlan()) .setSourceFile(sourceFile) - .addTransitiveHeaders(objcProvider.get(HEADER)) - .addHeaders(compilationArtifacts.getPrivateHdrs()) .addMandatoryInputs(swiftHeader.asSet()) .addTransitiveMandatoryInputs(moduleMapInputs) .addTransitiveMandatoryInputs(objcProvider.get(STATIC_FRAMEWORK_FILE)) .addTransitiveMandatoryInputs(objcProvider.get(DYNAMIC_FRAMEWORK_FILE)) .setDotdFile(dotdFile) + .addInputs(compilationArtifacts.getPrivateHdrs()) .addInputs(compilationArtifacts.getPchFile().asSet()) .setMnemonic("ObjcCompile") .setExecutable(xcrunwrapper(ruleContext)) @@ -503,6 +502,7 @@ public class LegacyCompilationSupport extends CompilationSupport { .addOutput(objFile) .addOutputs(gcnoFile.asSet()) .addOutput(dotdFile.artifact()) + .addTransitiveInputs(objcProvider.get(HEADER)) .build(ruleContext)); } diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCompileAction.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCompileAction.java index 182a509c30..d41b1570b2 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCompileAction.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCompileAction.java @@ -23,7 +23,6 @@ import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; import com.google.devtools.build.lib.actions.ActionExecutionContext; import com.google.devtools.build.lib.actions.ActionExecutionException; -import com.google.devtools.build.lib.actions.ActionInput; import com.google.devtools.build.lib.actions.ActionOwner; import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.actions.ArtifactResolver; @@ -31,7 +30,6 @@ import com.google.devtools.build.lib.actions.Executor; import com.google.devtools.build.lib.actions.PackageRootResolutionException; import com.google.devtools.build.lib.actions.PackageRootResolver; import com.google.devtools.build.lib.actions.ResourceSet; -import com.google.devtools.build.lib.actions.Spawn; import com.google.devtools.build.lib.analysis.actions.CommandLine; import com.google.devtools.build.lib.analysis.actions.SpawnAction; import com.google.devtools.build.lib.collect.nestedset.NestedSet; @@ -42,7 +40,6 @@ import com.google.devtools.build.lib.profiler.ProfilerTask; import com.google.devtools.build.lib.rules.apple.AppleConfiguration; import com.google.devtools.build.lib.rules.apple.Platform; import com.google.devtools.build.lib.rules.cpp.CppCompileAction.DotdFile; -import com.google.devtools.build.lib.rules.cpp.CppFileTypes; import com.google.devtools.build.lib.rules.cpp.HeaderDiscovery; import com.google.devtools.build.lib.rules.cpp.HeaderDiscovery.DotdPruningMode; import com.google.devtools.build.lib.rules.cpp.IncludeScanningContext; @@ -69,35 +66,10 @@ import javax.annotation.concurrent.GuardedBy; */ public class ObjcCompileAction extends SpawnAction { - /** - * A spawn that provides all headers to sandboxed execution to allow pruned headers to be - * re-introduced into action inputs. - */ - public class ObjcCompileActionSpawn extends ActionSpawn { - - public ObjcCompileActionSpawn(Map<String, String> clientEnv) { - super(clientEnv); - } - - @Override - public Iterable<? extends ActionInput> getInputFiles() { - ImmutableList.Builder<ActionInput> inputs = ImmutableList.<ActionInput>builder() - .addAll(super.getInputFiles()); - - for (Artifact headerArtifact : headers) { - if (CppFileTypes.OBJC_HEADER.matches(headerArtifact.getFilename())) { - inputs.add(headerArtifact); - } - } - return inputs.build(); - } - } - private final DotdFile dotdFile; private final Artifact sourceFile; private final NestedSet<Artifact> mandatoryInputs; private final HeaderDiscovery.DotdPruningMode dotdPruningPlan; - private final NestedSet<Artifact> headers; // This can be read/written from multiple threads, so accesses must be synchronized. @GuardedBy("this") @@ -122,8 +94,7 @@ public class ObjcCompileAction extends SpawnAction { DotdFile dotdFile, Artifact sourceFile, NestedSet<Artifact> mandatoryInputs, - HeaderDiscovery.DotdPruningMode dotdPruningPlan, - NestedSet<Artifact> headers) { + HeaderDiscovery.DotdPruningMode dotdPruningPlan) { super( owner, tools, @@ -144,7 +115,6 @@ public class ObjcCompileAction extends SpawnAction { this.sourceFile = sourceFile; this.mandatoryInputs = mandatoryInputs; this.dotdPruningPlan = dotdPruningPlan; - this.headers = headers; this.inputsKnown = (dotdPruningPlan == DotdPruningMode.DO_NOT_USE); } @@ -155,11 +125,6 @@ public class ObjcCompileAction extends SpawnAction { } @Override - public final Spawn getSpawn(Map<String, String> clientEnv) { - return new ObjcCompileActionSpawn(clientEnv); - } - - @Override public synchronized boolean inputsKnown() { return inputsKnown; } @@ -171,7 +136,8 @@ public class ObjcCompileAction extends SpawnAction { @Override public Iterable<Artifact> discoverInputs(ActionExecutionContext actionExecutionContext) { - return headers; + // We do not use include scanning for objc + return null; } // Keep in sync with {@link CppCompileAction#resolveInputsFromCache} @@ -330,7 +296,6 @@ public class ObjcCompileAction extends SpawnAction { private Artifact sourceFile; private final NestedSetBuilder<Artifact> mandatoryInputs = new NestedSetBuilder<>(STABLE_ORDER); private HeaderDiscovery.DotdPruningMode dotdPruningPlan; - private NestedSetBuilder<Artifact> headers = NestedSetBuilder.stableOrder(); /** * Creates a new compile action builder with apple environment variables set that are typically @@ -398,20 +363,6 @@ public class ObjcCompileAction extends SpawnAction { this.dotdPruningPlan = dotdPruningPlan; return this; } - - /** Adds to the set of all possible headers that could be required by this compile action. */ - public Builder addTransitiveHeaders(NestedSet<Artifact> headers) { - this.headers.addTransitive(Preconditions.checkNotNull(headers)); - this.addTransitiveInputs(headers); - return this; - } - - /** Adds to the set of all possible headers that could be required by this compile action. */ - public Builder addHeaders(Iterable<Artifact> headers) { - this.headers.addAll(Preconditions.checkNotNull(headers)); - this.addInputs(headers); - return this; - } @Override protected SpawnAction createSpawnAction( @@ -444,8 +395,7 @@ public class ObjcCompileAction extends SpawnAction { dotdFile, sourceFile, mandatoryInputs.build(), - dotdPruningPlan, - headers.build()); + dotdPruningPlan); } } } |