diff options
author | 2017-08-14 18:13:46 +0200 | |
---|---|---|
committer | 2017-08-16 11:03:51 +0200 | |
commit | 86f6dc25a6ce8e50ce237c19a434d4e871fd0f73 (patch) | |
tree | 612c31b3b574ccb8c0948908a8011571c53dca5c /src/main/java/com/google/devtools/build/lib/rules/objc/CompilationSupport.java | |
parent | 55245e478fcfe8b898e39c7462bc975ba7548325 (diff) |
Add @CompileTimeConstant annotations to CustomCommandLine.
This enforces certain memory-efficient patterns. For deliberate use of dynamic strings, explicitly named overloads are introduced, with javadoc that guides the programmer into making the right choice.
This CL is a memory no-op on benchmarks, but it tries to prevent backslide by making sure programmers make conscious choices when they construct their command lines.
RELNOTES: None
PiperOrigin-RevId: 165185997
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/objc/CompilationSupport.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/objc/CompilationSupport.java | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/CompilationSupport.java b/src/main/java/com/google/devtools/build/lib/rules/objc/CompilationSupport.java index e6043f1fc8..edfc4eb343 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/CompilationSupport.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/CompilationSupport.java @@ -34,7 +34,6 @@ import static java.nio.charset.StandardCharsets.ISO_8859_1; import static java.util.stream.Collectors.toCollection; import com.google.common.annotations.VisibleForTesting; -import com.google.common.base.Joiner; import com.google.common.base.Optional; import com.google.common.base.Preconditions; import com.google.common.base.Predicate; @@ -1087,7 +1086,7 @@ public abstract class CompilationSupport { "--archive_source_mapping_files", VectorArg.of(j2ObjcArchiveSourceMappingFiles).joinWith(",")) .add("--entry_classes") - .add(Joiner.on(",").join(entryClasses)) + .add(VectorArg.of(entryClasses).joinWith(",")) .build(); ruleContext.registerAction( @@ -1385,16 +1384,16 @@ public abstract class CompilationSupport { .list()); CustomCommandLine.Builder cmdLine = CustomCommandLine.builder() - .add("--arch") - .add(appleConfiguration.getSingleArchitecture().toLowerCase()) - .add("--platform") - .add(appleConfiguration.getSingleArchPlatform().getLowerCaseNameInPlist()) - .add("--sdk_version") - .add(XcodeConfig.getSdkVersionForPlatform( - ruleContext, appleConfiguration.getSingleArchPlatform()) + .add("--arch", appleConfiguration.getSingleArchitecture().toLowerCase()) + .add("--platform", appleConfiguration.getSingleArchPlatform().getLowerCaseNameInPlist()) + .add( + "--sdk_version", + XcodeConfig.getSdkVersionForPlatform( + ruleContext, appleConfiguration.getSingleArchPlatform()) .toStringWithMinimumComponents(2)) - .add("--xcode_version") - .add(XcodeConfig.getXcodeVersion(ruleContext).toStringWithMinimumComponents(2)) + .add( + "--xcode_version", + XcodeConfig.getXcodeVersion(ruleContext).toStringWithMinimumComponents(2)) .add("--"); for (ObjcHeaderThinningInfo info : infos) { cmdLine.add( |