aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main
diff options
context:
space:
mode:
authorGravatar cpeyser <cpeyser@google.com>2017-10-20 23:15:10 +0200
committerGravatar Dmitry Lomov <dslomov@google.com>2017-10-23 17:16:15 +0200
commite9b10399f6a148a3d20442f2c5020b05fa891873 (patch)
tree4786a279489517fcfa7c8e4ce9e7e405415254ec /src/main
parent539b22b15c0114402e52151f63a2c83c95010244 (diff)
Move hard-coded compilation-mode-specific flags in ObjcConfiguration.
PiperOrigin-RevId: 172932367
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/CrosstoolCompilationSupport.java10
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommandLineOptions.java2
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/ObjcConfiguration.java4
3 files changed, 9 insertions, 7 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/CrosstoolCompilationSupport.java b/src/main/java/com/google/devtools/build/lib/rules/objc/CrosstoolCompilationSupport.java
index 958e025f68..ef3ff308bd 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/CrosstoolCompilationSupport.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/CrosstoolCompilationSupport.java
@@ -106,6 +106,9 @@ public class CrosstoolCompilationSupport extends CompilationSupport {
/** Enabled if this target has objc sources in its transitive closure. */
private static final String CONTAINS_OBJC = "contains_objc_sources";
+ /** Enabled if GLIBCXX defines should be set on 'dbg' compiles. */
+ private static final String USE_GLIBCXX_DBG_OPTS_FEATURE_NAME = "use_glibcxx_dbg_opts";
+
private static final ImmutableList<String> ACTIVATED_ACTIONS =
ImmutableList.of(
"objc-compile",
@@ -452,10 +455,6 @@ public class CrosstoolCompilationSupport extends CompilationSupport {
.setCopts(
ImmutableList.<String>builder()
.addAll(getCompileRuleCopts())
- .addAll(
- ruleContext
- .getFragment(ObjcConfiguration.class)
- .getCoptsForCompilationMode())
.addAll(extraCompileArgs)
.build())
.addIncludeDirs(priorityHeaders)
@@ -548,6 +547,9 @@ public class CrosstoolCompilationSupport extends CompilationSupport {
if (objcProvider.is(Flag.USES_OBJC)) {
activatedCrosstoolSelectables.add(CONTAINS_OBJC);
}
+ if (configuration.getOptions().get(ObjcCommandLineOptions.class).debugWithGlibcxx) {
+ activatedCrosstoolSelectables.add(USE_GLIBCXX_DBG_OPTS_FEATURE_NAME);
+ }
activatedCrosstoolSelectables.addAll(ruleContext.getFeatures());
try {
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 176840b2f9..2e2c81d38e 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
@@ -150,7 +150,7 @@ public class ObjcCommandLineOptions extends FragmentOptions {
@Option(
name = "experimental_objc_fastbuild_options",
- defaultValue = "-O0,-DDEBUG=1",
+ defaultValue = "-O0,-DDEBUG",
converter = CommaSeparatedOptionListConverter.class,
documentationCategory = OptionDocumentationCategory.OUTPUT_PARAMETERS,
effectTags = {OptionEffectTag.ACTION_COMMAND_LINES},
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 b3f0f6abd4..cd8d9944e4 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
@@ -40,7 +40,7 @@ import javax.annotation.Nullable;
public class ObjcConfiguration extends BuildConfiguration.Fragment {
@VisibleForTesting
static final ImmutableList<String> DBG_COPTS =
- ImmutableList.of("-O0", "-DDEBUG=1", "-fstack-protector", "-fstack-protector-all", "-g");
+ ImmutableList.of("-O0", "-DDEBUG", "-fstack-protector", "-fstack-protector-all", "-g");
@VisibleForTesting
static final ImmutableList<String> GLIBCXX_DBG_COPTS =
@@ -50,7 +50,7 @@ public class ObjcConfiguration extends BuildConfiguration.Fragment {
@VisibleForTesting
static final ImmutableList<String> OPT_COPTS =
ImmutableList.of(
- "-Os", "-DNDEBUG=1", "-Wno-unused-variable", "-Winit-self", "-Wno-extra");
+ "-Os", "-DNDEBUG", "-Wno-unused-variable", "-Winit-self", "-Wno-extra");
private final DottedVersion iosSimulatorVersion;
private final String iosSimulatorDevice;