aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java
diff options
context:
space:
mode:
authorGravatar rduan <rduan@google.com>2017-06-21 23:04:31 +0200
committerGravatar Philipp Wollermann <philwo@google.com>2017-06-22 12:39:51 +0200
commitaade4f64350a7817e452225733ae98cf19c63a69 (patch)
tree54f86ded2bf3ac945e40d6f60f51df6d968fdbae /src/main/java
parente9424cf9b9d72b98594966d5ac0f15bb018ec639 (diff)
Add back --sysroot argument for objc compile actions when grte_top is specified.
RELNOTES: None. PiperOrigin-RevId: 159740106
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/CompileCommandLine.java7
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java6
2 files changed, 11 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CompileCommandLine.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CompileCommandLine.java
index bdc82dc92e..f8c39402eb 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CompileCommandLine.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CompileCommandLine.java
@@ -161,7 +161,12 @@ public final class CompileCommandLine {
// Unfiltered compiler options contain system include paths. These must be added after
// the user provided options, otherwise users adding include paths will not pick up their
// own include paths first.
- if (!isObjcCompile(actionName)) {
+ if (isObjcCompile(actionName)) {
+ PathFragment sysroot = cppProvider.getSysroot();
+ if (sysroot != null) {
+ options.add(toolchain.getSysrootCompilerOption(sysroot));
+ }
+ } else {
options.addAll(cppProvider.getUnfilteredCompilerOptions(features));
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java
index 0add9e977a..c836b1869a 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java
@@ -1378,12 +1378,16 @@ public class CppConfiguration extends BuildConfiguration.Fragment {
return unfilteredCompilerFlags.evaluate(features);
} else {
return ImmutableList.<String>builder()
- .add("--sysroot=" + sysroot)
+ .add(getSysrootCompilerOption(sysroot))
.addAll(unfilteredCompilerFlags.evaluate(features))
.build();
}
}
+ public String getSysrootCompilerOption(PathFragment sysroot) {
+ return "--sysroot=" + sysroot;
+ }
+
/**
* Returns the set of command-line linker options, including any flags inferred from the
* command-line options.