aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/objc
diff options
context:
space:
mode:
authorGravatar tomlu <tomlu@google.com>2017-09-11 22:25:33 +0200
committerGravatar Philipp Wollermann <philwo@google.com>2017-09-12 14:05:28 +0200
commitbb50580a7f3eb3f4e7c5fba8e92d20e931591a70 (patch)
tree26b0b3b0e1dcac29980476b38f8ca99a320a6061 /src/main/java/com/google/devtools/build/lib/rules/objc
parentd24f3cbfc0b3102aaf550a282f26bc9c1ba073bf (diff)
Inline CustomCommandLine methods that can be expressed using VectorArg.
This whole CL was done using IDE refactoring tools and should be safe. PiperOrigin-RevId: 168275575
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/CompilationSupport.java15
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcAspect.java18
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/LegacyCompilationSupport.java26
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java3
4 files changed, 37 insertions, 25 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 b787ebcaf5..cf15e6082f 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
@@ -55,6 +55,7 @@ import com.google.devtools.build.lib.analysis.RuleConfiguredTarget.Mode;
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.actions.CommandLine;
import com.google.devtools.build.lib.analysis.actions.CustomCommandLine;
+import com.google.devtools.build.lib.analysis.actions.CustomCommandLine.VectorArg;
import com.google.devtools.build.lib.analysis.actions.ParameterFileWriteAction;
import com.google.devtools.build.lib.analysis.actions.SpawnAction;
import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
@@ -1105,12 +1106,16 @@ public abstract class CompilationSupport {
.addExecPath("--output_archive", prunedJ2ObjcArchive)
.addExecPath("--dummy_archive", dummyArchive)
.addExecPath("--xcrunwrapper", xcrunwrapper(ruleContext).getExecutable())
- .addJoinedExecPaths("--dependency_mapping_files", ",", j2ObjcDependencyMappingFiles)
- .addJoinedExecPaths("--header_mapping_files", ",", j2ObjcHeaderMappingFiles)
- .addJoinedExecPaths(
- "--archive_source_mapping_files", ",", j2ObjcArchiveSourceMappingFiles)
+ .addExecPaths(
+ "--dependency_mapping_files",
+ VectorArg.join(",").each(j2ObjcDependencyMappingFiles))
+ .addExecPaths(
+ "--header_mapping_files", VectorArg.join(",").each(j2ObjcHeaderMappingFiles))
+ .addExecPaths(
+ "--archive_source_mapping_files",
+ VectorArg.join(",").each(j2ObjcArchiveSourceMappingFiles))
.add("--entry_classes")
- .addJoined(",", entryClasses)
+ .addAll(VectorArg.join(",").each(entryClasses))
.build();
ruleContext.registerAction(
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcAspect.java b/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcAspect.java
index 3bdb5d48c0..c90d5a7a62 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcAspect.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/J2ObjcAspect.java
@@ -34,6 +34,7 @@ import com.google.devtools.build.lib.analysis.RuleConfiguredTarget.Mode;
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
import com.google.devtools.build.lib.analysis.actions.CustomCommandLine;
+import com.google.devtools.build.lib.analysis.actions.CustomCommandLine.VectorArg;
import com.google.devtools.build.lib.analysis.actions.ParameterFileWriteAction;
import com.google.devtools.build.lib.analysis.actions.SpawnAction;
import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
@@ -492,7 +493,8 @@ public class J2ObjcAspect extends NativeAspectClass implements ConfiguredAspectF
ImmutableList.Builder<Artifact> sourceJarOutputFiles = ImmutableList.builder();
if (!Iterables.isEmpty(sourceJars)) {
sourceJarOutputFiles.addAll(sourceJarOutputs(ruleContext));
- argBuilder.addJoinedExecPaths("--src_jars", ",", ImmutableList.copyOf(sourceJars));
+ argBuilder.addExecPaths(
+ "--src_jars", VectorArg.join(",").each(ImmutableList.copyOf(sourceJars)));
argBuilder.addAll(sourceJarFlags(ruleContext));
}
@@ -504,7 +506,7 @@ public class J2ObjcAspect extends NativeAspectClass implements ConfiguredAspectF
NestedSet<Artifact> depsHeaderMappingFiles =
depJ2ObjcMappingFileProvider.getHeaderMappingFiles();
if (!depsHeaderMappingFiles.isEmpty()) {
- argBuilder.addJoinedExecPaths("--header-mapping", ",", depsHeaderMappingFiles);
+ argBuilder.addExecPaths("--header-mapping", VectorArg.join(",").each(depsHeaderMappingFiles));
}
boolean experimentalJ2ObjcHeaderMap =
@@ -516,7 +518,7 @@ public class J2ObjcAspect extends NativeAspectClass implements ConfiguredAspectF
NestedSet<Artifact> depsClassMappingFiles = depJ2ObjcMappingFileProvider.getClassMappingFiles();
if (!depsClassMappingFiles.isEmpty()) {
- argBuilder.addJoinedExecPaths("--mapping", ",", depsClassMappingFiles);
+ argBuilder.addExecPaths("--mapping", VectorArg.join(",").each(depsClassMappingFiles));
}
Artifact archiveSourceMappingFile = j2ObjcOutputArchiveSourceMappingFile(ruleContext);
@@ -538,7 +540,7 @@ public class J2ObjcAspect extends NativeAspectClass implements ConfiguredAspectF
NestedSet<Artifact> compileTimeJars =
compArgsProvider.getRecursiveJavaCompilationArgs().getCompileTimeJars();
if (!compileTimeJars.isEmpty()) {
- argBuilder.addJoinedExecPaths("-classpath", ":", compileTimeJars);
+ argBuilder.addExecPaths("-classpath", VectorArg.join(":").each(compileTimeJars));
}
argBuilder.addExecPaths(ImmutableList.copyOf(sources));
@@ -584,12 +586,12 @@ public class J2ObjcAspect extends NativeAspectClass implements ConfiguredAspectF
if (experimentalJ2ObjcHeaderMap) {
CustomCommandLine.Builder headerMapCommandLine = CustomCommandLine.builder();
if (!Iterables.isEmpty(sources)) {
- headerMapCommandLine.addJoinedExecPaths(
- "--source_files", ",", ImmutableList.copyOf(sources));
+ headerMapCommandLine.addExecPaths(
+ "--source_files", VectorArg.join(",").each(ImmutableList.copyOf(sources)));
}
if (!Iterables.isEmpty(sourceJars)) {
- headerMapCommandLine.addJoinedExecPaths(
- "--source_jars", ",", ImmutableList.copyOf(sourceJars));
+ headerMapCommandLine.addExecPaths(
+ "--source_jars", VectorArg.join(",").each(ImmutableList.copyOf(sourceJars)));
}
headerMapCommandLine.addExecPath("--output_mapping_file", outputHeaderMappingFile);
ruleContext.registerAction(new SpawnAction.Builder()
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 52024afae9..4dc2556ce8 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
@@ -51,6 +51,7 @@ import com.google.devtools.build.lib.analysis.RuleConfiguredTarget.Mode;
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.actions.CommandLine;
import com.google.devtools.build.lib.analysis.actions.CustomCommandLine;
+import com.google.devtools.build.lib.analysis.actions.CustomCommandLine.VectorArg;
import com.google.devtools.build.lib.analysis.actions.SpawnActionTemplate;
import com.google.devtools.build.lib.analysis.actions.SpawnActionTemplate.OutputPathMapper;
import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
@@ -305,14 +306,15 @@ public class LegacyCompilationSupport extends CompilationSupport {
.addAll(
commonLinkAndCompileFlagsForClang(objcProvider, objcConfiguration, appleConfiguration))
.addAll(objcConfiguration.getCoptsForCompilationMode())
- .addBeforeEachPath(
- "-iquote", ObjcCommon.userHeaderSearchPaths(objcProvider, buildConfiguration))
- .addBeforeEachExecPath("-include", pchFile.asSet())
- .addBeforeEachPath("-I", ImmutableList.copyOf(priorityHeaders))
- .addBeforeEachPath("-I", objcProvider.get(INCLUDE))
- .addBeforeEachPath("-isystem", objcProvider.get(INCLUDE_SYSTEM))
+ .addPaths(
+ VectorArg.addBefore("-iquote")
+ .each(ObjcCommon.userHeaderSearchPaths(objcProvider, buildConfiguration)))
+ .addExecPaths(VectorArg.addBefore("-include").each(pchFile.asSet()))
+ .addPaths(VectorArg.addBefore("-I").each(ImmutableList.copyOf(priorityHeaders)))
+ .addPaths(VectorArg.addBefore("-I").each(objcProvider.get(INCLUDE)))
+ .addPaths(VectorArg.addBefore("-isystem").each(objcProvider.get(INCLUDE_SYSTEM)))
.addAll(ImmutableList.copyOf(otherFlags))
- .addFormatEach("-D%s", objcProvider.get(DEFINE))
+ .addAll(VectorArg.format("-D%s").each(objcProvider.get(DEFINE)))
.addAll(coverageFlags)
.addAll(ImmutableList.copyOf(getCompileRuleCopts()));
@@ -737,11 +739,13 @@ public class LegacyCompilationSupport extends CompilationSupport {
.add("@executable_path/Frameworks")
.add("-fobjc-link-runtime")
.addAll(DEFAULT_LINKER_FLAGS)
- .addBeforeEach("-framework", frameworkNames(objcProvider))
- .addBeforeEach("-weak_framework", SdkFramework.names(objcProvider.get(WEAK_SDK_FRAMEWORK)))
- .addFormatEach("-l%s", libraryNames)
+ .addAll(VectorArg.addBefore("-framework").each(frameworkNames(objcProvider)))
+ .addAll(
+ VectorArg.addBefore("-weak_framework")
+ .each(SdkFramework.names(objcProvider.get(WEAK_SDK_FRAMEWORK))))
+ .addAll(VectorArg.format("-l%s").each(libraryNames))
.addExecPath("-o", linkedBinary)
- .addBeforeEachExecPath("-force_load", forceLinkArtifacts)
+ .addExecPaths(VectorArg.addBefore("-force_load").each(forceLinkArtifacts))
.addAll(ImmutableList.copyOf(extraLinkArgs))
.addAll(objcProvider.get(ObjcProvider.LINKOPT));
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java
index a5ff7418b1..5d7bb41683 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ProtobufSupport.java
@@ -28,6 +28,7 @@ import com.google.devtools.build.lib.analysis.RuleConfiguredTarget.Mode;
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.actions.CustomCommandLine;
import com.google.devtools.build.lib.analysis.actions.CustomCommandLine.Builder;
+import com.google.devtools.build.lib.analysis.actions.CustomCommandLine.VectorArg;
import com.google.devtools.build.lib.analysis.actions.FileWriteAction;
import com.google.devtools.build.lib.analysis.actions.SpawnAction;
import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
@@ -485,7 +486,7 @@ final class ProtobufSupport {
.addDynamicString(getGenfilesPathString())
.add("--proto-root-dir")
.add(".")
- .addBeforeEachExecPath("--config", portableProtoFilters)
+ .addExecPaths(VectorArg.addBefore("--config").each(portableProtoFilters))
.build();
}