diff options
author | hlopko <hlopko@google.com> | 2017-09-22 10:14:33 -0400 |
---|---|---|
committer | John Cater <jcater@google.com> | 2017-09-25 09:36:06 -0400 |
commit | 3c23d3eae64b51d8367d5d586f0a41128eb96174 (patch) | |
tree | bc9dbb0ab30487290d1026e56f102df9be1de20b /src/main/java/com/google/devtools/build/lib/rules/cpp/CppLinkActionBuilder.java | |
parent | 51c8c7cfb2bffcc4d95a19680fbec08d3625a74e (diff) |
Use FeatureConfiguration to compute linkstamping compile command line
Before, linkstamping compile actions were hardcoded in bazel and assumed
gcc/clang and bash. This cl removes gcc/clang assumptions by using feature
configuration.
RELNOTES: None.
PiperOrigin-RevId: 169685949
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/cpp/CppLinkActionBuilder.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/cpp/CppLinkActionBuilder.java | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppLinkActionBuilder.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppLinkActionBuilder.java index 2df7719e49..633adc98a0 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppLinkActionBuilder.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppLinkActionBuilder.java @@ -186,7 +186,7 @@ public class CppLinkActionBuilder { private NestedSet<Artifact> runtimeInputs = NestedSetBuilder.emptySet(Order.STABLE_ORDER); private final NestedSetBuilder<Artifact> compilationInputs = NestedSetBuilder.stableOrder(); private final Set<Artifact> linkstamps = new LinkedHashSet<>(); - private List<String> linkstampOptions = new ArrayList<>(); + private ImmutableList<String> additionalLinkstampDefines = ImmutableList.of(); private final List<String> linkopts = new ArrayList<>(); private LinkTargetType linkType = LinkTargetType.STATIC_LIBRARY; private LinkStaticness linkStaticness = LinkStaticness.FULLY_STATIC; @@ -398,12 +398,6 @@ public class CppLinkActionBuilder { public final Set<Artifact> getLinkstamps() { return this.linkstamps; } - /** - * Returns linkstamp options for this link action. - */ - public List<String> getLinkstampOptions() { - return this.linkstampOptions; - } /** * Returns command line options for this link action. @@ -799,7 +793,7 @@ public class CppLinkActionBuilder { .setBuildInfoHeaderArtifacts(buildInfoHeaderArtifacts) .setLinkstamps(linkstampMap) .setLinkopts(ImmutableList.copyOf(linkopts)) - .addLinkstampCompileOptions(linkstampOptions); + .setAdditionalLinkstampDefines(additionalLinkstampDefines); } else { List<String> opts = new ArrayList<>(linkopts); opts.addAll(featureConfiguration.getCommandLine("lto-indexing", buildVariables)); @@ -1236,8 +1230,9 @@ public class CppLinkActionBuilder { return this; } - public CppLinkActionBuilder addLinkstampCompilerOptions(ImmutableList<String> linkstampOptions) { - this.linkstampOptions = linkstampOptions; + public CppLinkActionBuilder setAdditionalLinkstampDefines( + ImmutableList<String> additionalLinkstampDefines) { + this.additionalLinkstampDefines = Preconditions.checkNotNull(additionalLinkstampDefines); return this; } |