aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/BinaryLinkingTargetFactory.java3
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/CompilationSupport.java37
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommandLineOptions.java12
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommon.java5
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/ObjcConfiguration.java9
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/ReleaseBundlingSupport.java16
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/XcodeSupport.java3
7 files changed, 13 insertions, 72 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/BinaryLinkingTargetFactory.java b/src/main/java/com/google/devtools/build/lib/rules/objc/BinaryLinkingTargetFactory.java
index af147d5c0c..b013d604fe 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/BinaryLinkingTargetFactory.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/BinaryLinkingTargetFactory.java
@@ -234,8 +234,7 @@ abstract class BinaryLinkingTargetFactory implements RuleConfiguredTargetFactory
.setHasModuleMap()
.setLinkedBinary(intermediateArtifacts.strippedSingleArchitectureBinary());
- if (ObjcRuleClasses.objcConfiguration(ruleContext).generateDebugSymbols()
- || ObjcRuleClasses.objcConfiguration(ruleContext).generateDsym()) {
+ if (ObjcRuleClasses.objcConfiguration(ruleContext).generateDsym()) {
builder.addDebugArtifacts(DsymOutputType.APP);
}
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 8036821b7f..002d980837 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
@@ -89,7 +89,6 @@ import com.google.devtools.build.lib.rules.test.InstrumentedFilesCollector;
import com.google.devtools.build.lib.rules.test.InstrumentedFilesCollector.InstrumentationSpec;
import com.google.devtools.build.lib.rules.test.InstrumentedFilesCollector.LocalMetadataCollector;
import com.google.devtools.build.lib.rules.test.InstrumentedFilesProvider;
-import com.google.devtools.build.lib.shell.ShellUtils;
import com.google.devtools.build.lib.util.FileTypeSet;
import com.google.devtools.build.lib.util.Preconditions;
import com.google.devtools.build.lib.vfs.FileSystemUtils;
@@ -649,7 +648,7 @@ public final class CompilationSupport {
.add("-enable-objc-interop")
.add(objcConfiguration.getSwiftCoptsForCompilationMode());
- if (objcConfiguration.generateDebugSymbols() || objcConfiguration.generateDsym()) {
+ if (objcConfiguration.generateDsym()) {
commandLine.add("-g");
}
@@ -731,7 +730,7 @@ public final class CompilationSupport {
.add("-target").add(swiftTarget(appleConfiguration))
.add(objcConfiguration.getSwiftCoptsForCompilationMode());
- if (objcConfiguration.generateDebugSymbols() || objcConfiguration.generateDsym()) {
+ if (objcConfiguration.generateDsym()) {
commandLine.add("-g");
}
@@ -881,8 +880,8 @@ public final class CompilationSupport {
/**
* Registers any actions necessary to link this rule and its dependencies.
*
- * <p>Dsym bundle and breakpad files are generated if
- * {@link ObjcConfiguration#generateDebugSymbols()} is set.
+ * <p>Dsym bundle is generated if
+ * {@link ObjcConfiguration#generateDsym()} is set.
*
* <p>When Bazel flags {@code --compilation_mode=opt} and {@code --objc_enable_binary_stripping}
* are specified, additional optimizations will be performed on the linked binary: all-symbol
@@ -907,13 +906,9 @@ public final class CompilationSupport {
DsymOutputType dsymOutputType) {
Optional<Artifact> dsymBundleZip;
Optional<Artifact> linkmap;
- if (objcConfiguration.generateDebugSymbols() || objcConfiguration.generateDsym()) {
+ if (objcConfiguration.generateDsym()) {
registerDsymActions(dsymOutputType);
dsymBundleZip = Optional.of(intermediateArtifacts.tempDsymBundleZip(dsymOutputType));
-
- if (objcConfiguration.generateDebugSymbols()) {
- registerBreakpadAction(intermediateArtifacts.dsymSymbol(dsymOutputType));
- }
} else {
dsymBundleZip = Optional.absent();
}
@@ -1013,7 +1008,7 @@ public final class CompilationSupport {
// When compilation_mode=opt and objc_enable_binary_stripping are specified, the unstripped
// binary containing debug symbols is generated by the linker, which also needs the debug
// symbols for dead-code removal. The binary is also used to generate dSYM bundle if
- // --objc_generate_debug_symbol is specified. A symbol strip action is later registered to strip
+ // --apple_generate_dsym is specified. A symbol strip action is later registered to strip
// the symbol table from the unstripped binary.
Artifact binaryToLink =
objcConfiguration.shouldStripBinary()
@@ -1491,23 +1486,6 @@ public final class CompilationSupport {
return this;
}
- private void registerBreakpadAction(Artifact debugSymbolFile) {
- Artifact dumpsyms = ruleContext.getPrerequisiteArtifact("$dumpsyms", Mode.HOST);
- Artifact breakpadFile = intermediateArtifacts.breakpadSym();
- ruleContext.registerAction(ObjcRuleClasses.spawnOnDarwinActionBuilder()
- .setMnemonic("GenBreakpad")
- .setProgressMessage("Generating breakpad file: " + ruleContext.getLabel())
- .setShellCommand(ImmutableList.of("/bin/bash", "-c"))
- .addInput(dumpsyms)
- .addInput(debugSymbolFile)
- .addArgument(String.format("%s %s > %s",
- ShellUtils.shellEscape(dumpsyms.getExecPathString()),
- ShellUtils.shellEscape(debugSymbolFile.getExecPathString()),
- ShellUtils.shellEscape(breakpadFile.getExecPathString())))
- .addOutput(breakpadFile)
- .build(ruleContext));
- }
-
private PathFragment removeSuffix(PathFragment path, String suffix) {
String name = path.getBaseName();
Preconditions.checkArgument(
@@ -1592,7 +1570,8 @@ public final class CompilationSupport {
default:
throw new IllegalArgumentException("Unhandled platform " + platform);
}
- if (objcConfiguration.generateDebugSymbols() || objcConfiguration.generateDsym()) {
+
+ if (objcConfiguration.generateDsym()) {
builder.add("-g");
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommandLineOptions.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommandLineOptions.java
index 7cf1fcf323..36821e9baa 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommandLineOptions.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommandLineOptions.java
@@ -52,18 +52,6 @@ public class ObjcCommandLineOptions extends FragmentOptions {
+ "on the machine the simulator will be run on.")
public String iosSimulatorDevice;
- // Deprecated. See b/27942021 for more details.
- @Option(
- name = "objc_generate_debug_symbols",
- defaultValue = "false",
- category = "flags",
- deprecationWarning = "-g is enabled for all dbg builds."
- + "Use --apple_generate_dsym flag for dSYM."
- + "Use apple_generate_breakpad rule for breakpad.",
- help = "Specifies whether to generate debug symbol(.dSYM) file."
- )
- public boolean generateDebugSymbols;
-
@Option(name = "objc_generate_linkmap",
defaultValue = "false",
category = "flags",
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommon.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommon.java
index 952349abd5..d762411ae3 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommon.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommon.java
@@ -17,7 +17,6 @@ package com.google.devtools.build.lib.rules.objc;
import static com.google.devtools.build.lib.packages.BuildType.LABEL;
import static com.google.devtools.build.lib.rules.cpp.Link.LINK_LIBRARY_FILETYPES;
import static com.google.devtools.build.lib.rules.objc.ObjcProvider.ASSET_CATALOG;
-import static com.google.devtools.build.lib.rules.objc.ObjcProvider.BREAKPAD_FILE;
import static com.google.devtools.build.lib.rules.objc.ObjcProvider.BUNDLE_FILE;
import static com.google.devtools.build.lib.rules.objc.ObjcProvider.BUNDLE_IMPORT_DIR;
import static com.google.devtools.build.lib.rules.objc.ObjcProvider.CC_LIBRARY;
@@ -575,10 +574,6 @@ public final class ObjcCommon {
objcProvider
.add(DEBUG_SYMBOLS, intermediateArtifacts.dsymSymbol(dsymOutputType))
.add(DEBUG_SYMBOLS_PLIST, intermediateArtifacts.dsymPlist(dsymOutputType));
-
- if (ObjcRuleClasses.objcConfiguration(context).generateDebugSymbols()) {
- objcProvider.add(BREAKPAD_FILE, intermediateArtifacts.breakpadSym());
- }
}
return new ObjcCommon(objcProvider.build(), compilationArtifacts);
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcConfiguration.java
index 5b403cbcad..69596dd723 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcConfiguration.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcConfiguration.java
@@ -52,7 +52,6 @@ public class ObjcConfiguration extends BuildConfiguration.Fragment {
private final DottedVersion iosMinimumOs;
private final DottedVersion iosSimulatorVersion;
private final String iosSimulatorDevice;
- private final boolean generateDebugSymbols;
private final boolean generateDsym;
private final boolean generateLinkmap;
private final boolean runMemleaks;
@@ -78,7 +77,6 @@ public class ObjcConfiguration extends BuildConfiguration.Fragment {
Preconditions.checkNotNull(objcOptions.iosSimulatorDevice, "iosSimulatorDevice");
this.iosSimulatorVersion =
Preconditions.checkNotNull(objcOptions.iosSimulatorVersion, "iosSimulatorVersion");
- this.generateDebugSymbols = objcOptions.generateDebugSymbols;
this.generateDsym = objcOptions.appleGenerateDsym;
this.generateLinkmap = objcOptions.generateLinkmap;
this.runMemleaks = objcOptions.runMemleaks;
@@ -120,13 +118,6 @@ public class ObjcConfiguration extends BuildConfiguration.Fragment {
}
/**
- * Returns whether dSYM + breakpad generation is enabled.
- */
- public boolean generateDebugSymbols() {
- return generateDebugSymbols;
- }
-
- /**
* Returns whether dSYM generation is enabled.
*/
public boolean generateDsym() {
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ReleaseBundlingSupport.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ReleaseBundlingSupport.java
index f67b0a8377..eae1193ed3 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ReleaseBundlingSupport.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ReleaseBundlingSupport.java
@@ -76,7 +76,7 @@ import javax.annotation.Nullable;
/**
* Support for released bundles, such as an application or extension. Such a bundle is generally
* composed of a top-level {@link BundleSupport bundle}, potentially signed, as well as some debug
- * information, if {@link ObjcConfiguration#generateDebugSymbols() requested}.
+ * information, if {@link ObjcConfiguration#generateDsym() requested}.
*
* <p>Contains actions, validation logic and provider value generation.
*
@@ -625,8 +625,7 @@ public final class ReleaseBundlingSupport {
filesToBuild.add(linkmapFile);
}
- if (ObjcRuleClasses.objcConfiguration(ruleContext).generateDebugSymbols()
- || ObjcRuleClasses.objcConfiguration(ruleContext).generateDsym()) {
+ if (ObjcRuleClasses.objcConfiguration(ruleContext).generateDsym()) {
filesToBuild.addAll(getDsymFiles(dsymOutputType).values());
// TODO(bazel-team): Remove the 'if' when the objc_binary rule does not generate a bundle any
@@ -648,14 +647,6 @@ public final class ReleaseBundlingSupport {
}
}
- if (ObjcRuleClasses.objcConfiguration(ruleContext).generateDebugSymbols()) {
- filesToBuild.addAll(getBreakpadFiles().values());
-
- if (linkedBinary == LinkedBinary.LOCAL_AND_DEPENDENCIES) {
- debugSymbolBuilder.add(intermediateArtifacts.breakpadSym());
- }
- }
-
filesToBuild
.add(releaseBundling.getIpaArtifact())
.addTransitive(debugSymbolBuilder.build())
@@ -669,8 +660,7 @@ public final class ReleaseBundlingSupport {
*/
public void addExportedDebugArtifacts(
ObjcProvider.Builder objcBuilder, DsymOutputType dsymOutputType) {
- if (ObjcRuleClasses.objcConfiguration(ruleContext).generateDebugSymbols()
- || ObjcRuleClasses.objcConfiguration(ruleContext).generateDsym()) {
+ if (ObjcRuleClasses.objcConfiguration(ruleContext).generateDsym()) {
objcBuilder
.addAll(ObjcProvider.EXPORTED_DEBUG_ARTIFACTS, getDsymFiles(dsymOutputType).values())
.add(
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 5e6b227895..d179d75f95 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
@@ -274,8 +274,7 @@ public final class XcodeSupport {
this.appleCpus = appleConfiguration.getMultiArchitectures(
appleConfiguration.getSingleArchPlatform().getType());
this.minimumOs = objcConfiguration.getMinimumOs().toString();
- this.generateDebugSymbols =
- objcConfiguration.generateDebugSymbols() || objcConfiguration.generateDsym();
+ this.generateDebugSymbols = objcConfiguration.generateDsym();
}
@Override