diff options
author | 2017-08-01 16:26:23 +0200 | |
---|---|---|
committer | 2017-08-01 17:45:13 +0200 | |
commit | 57d3e955f6d531a31ba955b8364990eadf4dda2c (patch) | |
tree | 4e030e0a824c016af24e113d3aee0af3680b17ed /src/main/java/com | |
parent | b05ed43283b9f5d69c4a1b27aa8319daed27e0be (diff) |
Only request per_object_debug_info when fission is enabled.
This allows CROSSTOOL authors to add flags to all targets for which fission
is enabled, even when a compile action does not output split debug info.
For example, when building with ThinLTO, compiles are split into a frontend
compile, that does not generate split debug info, but still needs to include
debug info if fission is enabled (even in opt mode).
RELNOTES: None.
PiperOrigin-RevId: 163825563
Diffstat (limited to 'src/main/java/com')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/cpp/CcCommon.java | 1 | ||||
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java | 3 |
2 files changed, 3 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCommon.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCommon.java index 94a5dbfb26..a45fdb1bf1 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCommon.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCommon.java @@ -94,7 +94,6 @@ public final class CcCommon { CppRuleClasses.HEADER_MODULE_COMPILE, CppRuleClasses.INCLUDE_PATHS, CppRuleClasses.PIC, - CppRuleClasses.PER_OBJECT_DEBUG_INFO, CppRuleClasses.PREPROCESSOR_DEFINES); public static final String CC_TOOLCHAIN_DEFAULT_ATTRIBUTE_NAME = ":cc_toolchain"; diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java index c8edea8784..64134d8f19 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java @@ -1937,6 +1937,9 @@ public class CppConfiguration extends BuildConfiguration.Fragment { requestedFeatures.add(CppRuleClasses.GCC_COVERAGE_MAP_FORMAT); } } + if (useFission()) { + requestedFeatures.add(CppRuleClasses.PER_OBJECT_DEBUG_INFO); + } return requestedFeatures.build(); } |