Skip to content

Commit 39ae2fb

Browse files
committed
add config option to add only debug! (and not trace!) calls
1 parent 4c1966f commit 39ae2fb

File tree

4 files changed

+9
-0
lines changed

4 files changed

+9
-0
lines changed

compiler/rustc/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,3 +20,4 @@ features = ['unprefixed_malloc_on_supported_platforms']
2020
jemalloc = ['jemalloc-sys']
2121
llvm = ['rustc_driver/llvm']
2222
max_level_info = ['rustc_driver/max_level_info']
23+
max_level_debug = ['rustc_driver/max_level_debug']

compiler/rustc_driver/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,3 +39,4 @@ winapi = { version = "0.3", features = ["consoleapi", "debugapi", "processenv"]
3939
[features]
4040
llvm = ['rustc_interface/llvm']
4141
max_level_info = ['tracing/max_level_info']
42+
max_level_debug = ['tracing/max_level_debug']

src/bootstrap/config.rs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@ pub struct Config {
113113
pub rust_debug_assertions: bool,
114114
pub rust_debug_assertions_std: bool,
115115
pub rust_debug_logging: bool,
116+
pub rust_trace_logging: bool,
116117
pub rust_debuginfo_level_rustc: u32,
117118
pub rust_debuginfo_level_std: u32,
118119
pub rust_debuginfo_level_tools: u32,
@@ -394,6 +395,7 @@ struct Rust {
394395
debug_assertions: Option<bool>,
395396
debug_assertions_std: Option<bool>,
396397
debug_logging: Option<bool>,
398+
trace_logging: Option<bool>,
397399
debuginfo_level: Option<u32>,
398400
debuginfo_level_rustc: Option<u32>,
399401
debuginfo_level_std: Option<u32>,
@@ -603,6 +605,7 @@ impl Config {
603605
let mut debug_assertions = None;
604606
let mut debug_assertions_std = None;
605607
let mut debug_logging = None;
608+
let mut trace_logging = None;
606609
let mut debuginfo_level = None;
607610
let mut debuginfo_level_rustc = None;
608611
let mut debuginfo_level_std = None;
@@ -684,6 +687,7 @@ impl Config {
684687
debug_assertions = rust.debug_assertions;
685688
debug_assertions_std = rust.debug_assertions_std;
686689
debug_logging = rust.debug_logging;
690+
trace_logging = rust.trace_logging;
687691
debuginfo_level = rust.debuginfo_level;
688692
debuginfo_level_rustc = rust.debuginfo_level_rustc;
689693
debuginfo_level_std = rust.debuginfo_level_std;
@@ -802,6 +806,7 @@ impl Config {
802806
debug_assertions_std.unwrap_or(config.rust_debug_assertions);
803807

804808
config.rust_debug_logging = debug_logging.unwrap_or(config.rust_debug_assertions);
809+
config.rust_trace_logging = trace_logging.unwrap_or(config.rust_debug_logging);
805810

806811
let with_defaults = |debuginfo_level_specific: Option<u32>| {
807812
debuginfo_level_specific.or(debuginfo_level).unwrap_or(if debug == Some(true) {

src/bootstrap/lib.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -549,6 +549,8 @@ impl Build {
549549
// as well as tracing *ignoring* this feature when debug_assertions is on
550550
if !self.config.rust_debug_logging {
551551
features.push_str(" max_level_info");
552+
} else if !self.config.rust_trace_logging {
553+
features.push_str(" max_level_debug");
552554
}
553555

554556
features

0 commit comments

Comments
 (0)