cat(1): statically linked sysexits
This commit is contained in:
parent
346702d58e
commit
bf6d149e07
9
Cargo.lock
generated
9
Cargo.lock
generated
@ -6,14 +6,7 @@ version = 3
|
|||||||
name = "coreutils"
|
name = "coreutils"
|
||||||
version = "0.0.1"
|
version = "0.0.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"sysexits 0.1.0",
|
"sysexits",
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "sysexits"
|
|
||||||
version = "0.1.0"
|
|
||||||
dependencies = [
|
|
||||||
"sysexits 0.3.4",
|
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
@ -9,7 +9,7 @@ authors = [
|
|||||||
]
|
]
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
sysexits = { version = "0.1.0", path = "sysexits", package = "sysexits" }
|
sysexits = "0.3.4"
|
||||||
|
|
||||||
[[bin]]
|
[[bin]]
|
||||||
name = "cat"
|
name = "cat"
|
||||||
|
@ -5,9 +5,9 @@ use std::fs::read_to_string;
|
|||||||
use std::io;
|
use std::io;
|
||||||
use std::io::Write;
|
use std::io::Write;
|
||||||
use std::env;
|
use std::env;
|
||||||
use std::process;
|
use sysexits::ExitCode;
|
||||||
|
|
||||||
fn main() {
|
fn main() -> ExitCode {
|
||||||
let mut args: Vec<String> = env::args().collect();
|
let mut args: Vec<String> = env::args().collect();
|
||||||
let argv0 = args.remove(0);
|
let argv0 = args.remove(0);
|
||||||
let mut opts = Vec::new();
|
let mut opts = Vec::new();
|
||||||
@ -29,7 +29,7 @@ fn main() {
|
|||||||
|
|
||||||
_ => {
|
_ => {
|
||||||
println!("Usage: {} [options...] [files...]", argv0);
|
println!("Usage: {} [options...] [files...]", argv0);
|
||||||
process::exit(64); // sysexits(3) EX_USAGE
|
return ExitCode::Usage;
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@ -44,7 +44,7 @@ fn main() {
|
|||||||
Ok(_) => { val.push_str(&content); },
|
Ok(_) => { val.push_str(&content); },
|
||||||
Err(_) => {
|
Err(_) => {
|
||||||
println!("Usage: {} [options...] [files...]", argv0);
|
println!("Usage: {} [options...] [files...]", argv0);
|
||||||
process::exit(64); // sysexits(3) EX_USAGE
|
return ExitCode::Usage;
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
@ -54,7 +54,7 @@ fn main() {
|
|||||||
Ok(output) => { val.push_str(&output); },
|
Ok(output) => { val.push_str(&output); },
|
||||||
Err(_) => {
|
Err(_) => {
|
||||||
println!("{}: {}: No such file or directory.", argv0, path);
|
println!("{}: {}: No such file or directory.", argv0, path);
|
||||||
process::exit(66); // sysexits(3) EX_NOINPUT
|
return ExitCode::NoInput;
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
@ -63,4 +63,5 @@ fn main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
io::stdout().flush().unwrap();
|
io::stdout().flush().unwrap();
|
||||||
|
ExitCode::Ok
|
||||||
}
|
}
|
||||||
|
16
sysexits/Cargo.lock
generated
16
sysexits/Cargo.lock
generated
@ -1,16 +0,0 @@
|
|||||||
# This file is automatically @generated by Cargo.
|
|
||||||
# It is not intended for manual editing.
|
|
||||||
version = 3
|
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "sysexits"
|
|
||||||
version = "0.3.4"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
checksum = "913b6c9c3fdc55ec78e76e281706cecfe0cfb4ba07545cbce8342ed943dcfa72"
|
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "sysexits-dynamic"
|
|
||||||
version = "0.1.0"
|
|
||||||
dependencies = [
|
|
||||||
"sysexits",
|
|
||||||
]
|
|
@ -1,10 +0,0 @@
|
|||||||
[package]
|
|
||||||
name = "sysexits"
|
|
||||||
version = "0.1.0"
|
|
||||||
edition = "2021"
|
|
||||||
|
|
||||||
[dependencies]
|
|
||||||
sysexits = "0.3.4"
|
|
||||||
|
|
||||||
[lib]
|
|
||||||
crate-type = ["dylib"]
|
|
@ -1 +0,0 @@
|
|||||||
pub use sysexits::*;
|
|
Reference in New Issue
Block a user