@@ -1034,79 +1034,8 @@ impl Build {
10341034
10351035 /// A centralized function for running commands that do not return output.
10361036 pub ( crate ) fn run_cmd < ' a , C : Into < BootstrapCommand < ' a > > > ( & self , cmd : C ) -> bool {
1037- if self . config . dry_run ( ) {
1038- return true ;
1039- }
1040-
10411037 let command = cmd. into ( ) ;
1042- self . verbose ( || println ! ( "running: {command:?}" ) ) ;
1043-
1044- let output_mode = command. output_mode . unwrap_or_else ( || match self . is_verbose ( ) {
1045- true => OutputMode :: PrintAll ,
1046- false => OutputMode :: PrintOutput ,
1047- } ) ;
1048- let ( output, print_error) = match output_mode {
1049- mode @ ( OutputMode :: PrintAll | OutputMode :: PrintOutput ) => (
1050- command. command . status ( ) . map ( |status| Output {
1051- status,
1052- stdout : Vec :: new ( ) ,
1053- stderr : Vec :: new ( ) ,
1054- } ) ,
1055- matches ! ( mode, OutputMode :: PrintAll ) ,
1056- ) ,
1057- OutputMode :: PrintOnFailure => ( command. command . output ( ) , true ) ,
1058- } ;
1059-
1060- let output = match output {
1061- Ok ( output) => output,
1062- Err ( e) => fail ( & format ! ( "failed to execute command: {:?}\n error: {}" , command, e) ) ,
1063- } ;
1064- let result = if !output. status . success ( ) {
1065- if print_error {
1066- println ! (
1067- "\n \n Command did not execute successfully.\
1068- \n Expected success, got: {}",
1069- output. status,
1070- ) ;
1071-
1072- if !self . is_verbose ( ) {
1073- println ! ( "Add `-v` to see more details.\n " ) ;
1074- }
1075-
1076- self . verbose ( || {
1077- println ! (
1078- "\n STDOUT ----\n {}\n \
1079- STDERR ----\n {}\n ",
1080- String :: from_utf8_lossy( & output. stdout) ,
1081- String :: from_utf8_lossy( & output. stderr)
1082- )
1083- } ) ;
1084- }
1085- Err ( ( ) )
1086- } else {
1087- Ok ( ( ) )
1088- } ;
1089-
1090- match result {
1091- Ok ( _) => true ,
1092- Err ( _) => {
1093- match command. failure_behavior {
1094- BehaviorOnFailure :: DelayFail => {
1095- if self . fail_fast {
1096- exit ! ( 1 ) ;
1097- }
1098-
1099- let mut failures = self . delayed_failures . borrow_mut ( ) ;
1100- failures. push ( format ! ( "{command:?}" ) ) ;
1101- }
1102- BehaviorOnFailure :: Exit => {
1103- exit ! ( 1 ) ;
1104- }
1105- BehaviorOnFailure :: Ignore => { }
1106- }
1107- false
1108- }
1109- }
1038+ self . run_tracked ( command) . is_success ( )
11101039 }
11111040
11121041 /// Check if verbosity is greater than the `level`
0 commit comments