diff options
author | 2015-05-11 18:59:35 +0000 | |
---|---|---|
committer | 2015-05-15 09:34:14 +0000 | |
commit | 98c92744557330d844ff5c38a28e5419d153ed1f (patch) | |
tree | 29780a6e8ec363a798140562f7d50e321ea29f74 /src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java | |
parent | 9e387ddc2fbeb6c88400e8b9fcf4e1d1fc600be7 (diff) |
RELNOTES: Set XCode build setting USE_HEADERMAP to NO for Bazel-generated XCode project files. Bazel-generated XCode projects contain all necessary header search paths to resolve header imports. Header map is not needed.
--
MOS_MIGRATED_REVID=93329329
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java b/src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java index 796de443b0..a25f7861eb 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java @@ -16,6 +16,8 @@ package com.google.devtools.build.lib.rules.objc; import static com.google.devtools.build.lib.packages.ImplicitOutputsFunction.fromTemplates; +import com.google.common.annotations.VisibleForTesting; +import com.google.common.collect.ImmutableList; import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.analysis.RuleConfiguredTarget.Mode; import com.google.devtools.build.lib.analysis.RuleContext; @@ -23,6 +25,7 @@ import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder; import com.google.devtools.build.lib.packages.ImplicitOutputsFunction.SafeImplicitOutputsFunction; import com.google.devtools.build.lib.rules.objc.ReleaseBundlingSupport.SplitArchTransition.ConfigurationDistinguisher; import com.google.devtools.build.lib.rules.objc.XcodeProvider.Builder; +import com.google.devtools.build.xcode.xcodegen.proto.XcodeGenProtos.XcodeprojBuildSetting; /** * Support for Objc rule types that export an Xcode provider or generate xcode project files. @@ -120,7 +123,8 @@ public final class XcodeSupport { .setArchitecture(architecture) .setConfigurationDistinguisher(configurationDistinguisher) .setObjcProvider(objcProvider) - .setProductType(productType); + .setProductType(productType) + .addXcodeprojBuildSettings(XcodeSupport.defaultXcodeSettings()); return this; } @@ -169,4 +173,18 @@ public final class XcodeSupport { xcodeProviderBuilder.generateCompanionLibTarget(); return this; } + + /** + * Returns a list of default XCode build settings for Bazel-generated XCode projects. + */ + @VisibleForTesting + static Iterable<XcodeprojBuildSetting> defaultXcodeSettings() { + // Do not use XCode headermap because Bazel-generated header search paths are sufficient for + // resolving header imports. + return ImmutableList.of( + XcodeprojBuildSetting.newBuilder() + .setName("USE_HEADERMAP") + .setValue("NO") + .build()); + } } |