aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules
diff options
context:
space:
mode:
authorGravatar dannark <dannark@google.com>2018-06-21 17:46:06 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-06-21 17:48:01 -0700
commita8d7357b7dc66e0531c298e4d369e6342fcf94b7 (patch)
treea2ed8c5ee313d2113ac562a1ed57b5580683b108 /src/main/java/com/google/devtools/build/lib/rules
parentdb461d0e8a15aff0c4af219fd4a7a5b668ab1289 (diff)
Audit usages of Label.getRelative and update to Label.getRelativeWithRemapping
RELNOTES: None PiperOrigin-RevId: 201617188
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java3
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/CppToolchainInfo.java14
3 files changed, 15 insertions, 8 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java
index 8ff93ddec6..c1191850f8 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppHelper.java
@@ -299,7 +299,11 @@ public class CppHelper {
private static boolean expandLabel(
RuleContext ruleContext, List<String> linkopts, String labelName) {
try {
- Label label = ruleContext.getLabel().getRelative(labelName);
+ Label label =
+ ruleContext
+ .getLabel()
+ .getRelativeWithRemapping(
+ labelName, ruleContext.getRule().getPackage().getRepositoryMapping());
for (String prereqKind : LINKOPTS_PREREQUISITE_LABEL_KINDS) {
for (TransitiveInfoCollection target : ruleContext
.getPrerequisitesIf(prereqKind, Mode.TARGET, FileProvider.class)) {
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java
index ac7a1f6e31..33a3112b84 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java
@@ -104,7 +104,8 @@ public class CppOptions extends FragmentOptions {
throw new OptionsParsingException("Not a label");
}
try {
- return Label.parseAbsolute(input).getRelative(LIBC_RELATIVE_LABEL);
+ return Label.parseAbsolute(input)
+ .getRelativeWithRemapping(LIBC_RELATIVE_LABEL, ImmutableMap.of());
} catch (LabelSyntaxException e) {
throw new OptionsParsingException(e.getMessage());
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppToolchainInfo.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppToolchainInfo.java
index 7849ea52a6..1396779f83 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppToolchainInfo.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppToolchainInfo.java
@@ -199,14 +199,16 @@ public final class CppToolchainInfo {
crosstoolInfo.getLdEmbedFlags(),
crosstoolInfo.getObjcopyEmbedFlags(),
toolchainLabel,
- toolchainLabel.getRelative(
+ toolchainLabel.getRelativeWithRemapping(
!crosstoolInfo.getStaticRuntimesFilegroup().isEmpty()
? crosstoolInfo.getStaticRuntimesFilegroup()
- : "static-runtime-libs-" + crosstoolInfo.getTargetCpu()),
- toolchainLabel.getRelative(
+ : "static-runtime-libs-" + crosstoolInfo.getTargetCpu(),
+ ImmutableMap.of()),
+ toolchainLabel.getRelativeWithRemapping(
!crosstoolInfo.getDynamicRuntimesFilegroup().isEmpty()
? crosstoolInfo.getDynamicRuntimesFilegroup()
- : "dynamic-runtime-libs-" + crosstoolInfo.getTargetCpu()),
+ : "dynamic-runtime-libs-" + crosstoolInfo.getTargetCpu(),
+ ImmutableMap.of()),
"_solib_" + crosstoolInfo.getTargetCpu(),
crosstoolInfo.getAbiVersion(),
crosstoolInfo.getTargetSystemName(),
@@ -224,8 +226,8 @@ public final class CppToolchainInfo {
crosstoolInfo.supportsGoldLinker(),
crosstoolInfo.needsPic());
} catch (LabelSyntaxException e) {
- // All of the above label.getRelative() calls are valid labels, and the crosstool_top
- // was already checked earlier in the process.
+ // All of the above label.getRelativeWithRemapping() calls are valid labels, and the
+ // crosstool_top was already checked earlier in the process.
throw new AssertionError(e);
}
}