Merge commit '11a0cceab9
' into subtree-update_cg_gcc_2023-10-09
This commit is contained in:
commit
30290c8b41
82 changed files with 2848 additions and 669 deletions
62
compiler/rustc_codegen_gcc/build_system/src/main.rs
Normal file
62
compiler/rustc_codegen_gcc/build_system/src/main.rs
Normal file
|
@ -0,0 +1,62 @@
|
|||
use std::env;
|
||||
use std::process;
|
||||
|
||||
mod build;
|
||||
mod config;
|
||||
mod prepare;
|
||||
mod rustc_info;
|
||||
mod utils;
|
||||
|
||||
macro_rules! arg_error {
|
||||
($($err:tt)*) => {{
|
||||
eprintln!($($err)*);
|
||||
eprintln!();
|
||||
usage();
|
||||
std::process::exit(1);
|
||||
}};
|
||||
}
|
||||
|
||||
fn usage() {
|
||||
println!(
|
||||
"\
|
||||
Available commands for build_system:
|
||||
|
||||
prepare : Run prepare command
|
||||
build : Run build command
|
||||
--help : Show this message"
|
||||
);
|
||||
}
|
||||
|
||||
pub enum Command {
|
||||
Prepare,
|
||||
Build,
|
||||
}
|
||||
|
||||
fn main() {
|
||||
if env::var("RUST_BACKTRACE").is_err() {
|
||||
env::set_var("RUST_BACKTRACE", "1");
|
||||
}
|
||||
|
||||
let command = match env::args().nth(1).as_deref() {
|
||||
Some("prepare") => Command::Prepare,
|
||||
Some("build") => Command::Build,
|
||||
Some("--help") => {
|
||||
usage();
|
||||
process::exit(0);
|
||||
}
|
||||
Some(flag) if flag.starts_with('-') => arg_error!("Expected command found flag {}", flag),
|
||||
Some(command) => arg_error!("Unknown command {}", command),
|
||||
None => {
|
||||
usage();
|
||||
process::exit(0);
|
||||
}
|
||||
};
|
||||
|
||||
if let Err(e) = match command {
|
||||
Command::Prepare => prepare::run(),
|
||||
Command::Build => build::run(),
|
||||
} {
|
||||
eprintln!("Command failed to run: {e:?}");
|
||||
process::exit(1);
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue