diff options
author | 2016-07-28 16:16:54 +0000 | |
---|---|---|
committer | 2016-07-29 10:09:50 +0000 | |
commit | 80f635a1bcd86ab08c14d5af4b2f56185d4825f1 (patch) | |
tree | 33e4a6e2835eb3e4aef8be0afe796d9d07a71dcf /src/main/java/com/google/devtools/build/lib/rules/objc/Bundling.java | |
parent | ee8b7aaff277b913d50f3083768564c1d7124c87 (diff) |
Roll forward of commit 05c0bd286b3802ad3d7faf48bc19e86929a9cf6d:
Include SwiftSupport directory into the IPA when an app contains Swift.
* To pass App Store validation, an app that contains Swift code must have a SwiftSupport directory at the root of the IPA.
--
MOS_MIGRATED_REVID=128706028
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/objc/Bundling.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/objc/Bundling.java | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/Bundling.java b/src/main/java/com/google/devtools/build/lib/rules/objc/Bundling.java index a5a9a71240..e00d64bf8d 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/Bundling.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/Bundling.java @@ -45,7 +45,6 @@ import com.google.devtools.build.lib.rules.apple.AppleConfiguration; import com.google.devtools.build.lib.rules.apple.DottedVersion; import com.google.devtools.build.lib.util.Preconditions; import com.google.devtools.build.lib.vfs.PathFragment; - import java.util.HashSet; import java.util.Map; import java.util.Set; @@ -221,6 +220,17 @@ final class Bundling { return mergeZipBuilder.build(); } + private NestedSet<Artifact> rootMergeZips() { + NestedSetBuilder<Artifact> rootMergeZipsBuilder = + NestedSetBuilder.<Artifact>stableOrder().addTransitive(objcProvider.get(ROOT_MERGE_ZIP)); + + if (objcProvider.is(USES_SWIFT)) { + rootMergeZipsBuilder.add(intermediateArtifacts.swiftSupportZip()); + } + + return rootMergeZipsBuilder.build(); + } + private NestedSet<Artifact> bundleInfoplistInputs() { if (objcProvider.hasAssetCatalogs()) { infoplistInputs.add(intermediateArtifacts.actoolPartialInfoplist()); @@ -328,9 +338,7 @@ final class Bundling { NestedSet<BundleableFile> binaryStringsFiles = binaryStringsFiles(); NestedSet<BundleableFile> dynamicFrameworks = dynamicFrameworkFiles(); NestedSet<Artifact> mergeZips = mergeZips(actoolzipOutput); - NestedSet<Artifact> rootMergeZips = - NestedSetBuilder.<Artifact>stableOrder() - .addTransitive(objcProvider.get(ROOT_MERGE_ZIP)).build(); + NestedSet<Artifact> rootMergeZips = rootMergeZips(); bundleFilesBuilder .addAll(binaryStringsFiles) |