1
Fork 0
mirror of https://github.com/RGBCube/uutils-coreutils synced 2025-07-27 02:57:44 +00:00

change ~ make all sub-crates independent

This commit is contained in:
Roy Ivy III 2020-05-04 01:25:36 -05:00
parent 68bea8d81d
commit db2e950918
305 changed files with 1319 additions and 1517 deletions

112
build.rs
View file

@ -1,3 +1,6 @@
// spell-checker:ignore (utils) chgrp chmod chown chroot cksum dircolors hashsum hostid logname mkdir mkfifo mknod mktemp nohup nproc numfmt pathchk printenv printf readlink realpath relpath rmdir shuf stdbuf tsort uname unexpand whoami
// spell-checker:ignore () uutils uumain rustfmt rustc macos krate
use std::env;
use std::fs::File;
use std::io::Write;
@ -40,30 +43,99 @@ pub fn main() {
.unwrap();
for krate in crates {
cf.write_all(format!("extern crate uu_{krate};\n", krate = krate).as_bytes())
.unwrap();
match krate.as_ref() {
"arch"
| "base32" | "base64" | "basename"
| "cat" | "chgrp" | "chmod" | "chown" | "chroot" | "cksum" | "comm" | "cp" | "cut"
| "date" | "df" | "dircolors" | "dirname" | "du"
| "echo" | "env" | "expand" | "expr"
| "factor" | "fmt" | "fold"
| "groups"
| "head" | "hostid" | "hostname"
| "id" | "install"
| "join"
| "kill"
| "link" | "ln" | "logname" | "ls"
| "mkdir" | "mkfifo" | "mknod" | "mktemp" | "more" | "mv"
| "nice" | "nl" | "nohup" | "nproc" | "numfmt"
| "od"
| "paste" | "pathchk" | "pinky" | "printenv" | "printf" | "ptx" | "pwd"
| "readlink" | "realpath" | "relpath" | "rm" | "rmdir"
| "seq" | "shred" | "shuf" | "sleep" | "sort" | "split" | "stat" | "stdbuf" | "sum" | "sync"
| "tac" | "tail" | "tee" | "test" | "timeout" | "touch" | "tr" | "truncate" | "tsort" | "tty"
| "uname" | "unexpand" | "uniq" | "unlink" | "uptime" | "users"
| "wc" | "who" | "whoami"
| "yes"
| "false" | "true"
| "hashsum"
=> {
// cf.write_all(format!("extern crate {krate};\n", krate = krate).as_bytes())
// .unwrap();
}
_ => {
cf.write_all(format!("extern crate uu_{krate};\n", krate = krate).as_bytes())
.unwrap();
}
}
match krate.as_ref() {
"hashsum" => {
mf.write_all(
"map.insert(\"hashsum\", uu_hashsum::uumain);
map.insert(\"md5sum\", uu_hashsum::uumain);
map.insert(\"sha1sum\", uu_hashsum::uumain);
map.insert(\"sha224sum\", uu_hashsum::uumain);
map.insert(\"sha256sum\", uu_hashsum::uumain);
map.insert(\"sha384sum\", uu_hashsum::uumain);
map.insert(\"sha512sum\", uu_hashsum::uumain);
map.insert(\"sha3sum\", uu_hashsum::uumain);
map.insert(\"sha3-224sum\", uu_hashsum::uumain);
map.insert(\"sha3-256sum\", uu_hashsum::uumain);
map.insert(\"sha3-384sum\", uu_hashsum::uumain);
map.insert(\"sha3-512sum\", uu_hashsum::uumain);
map.insert(\"shake128sum\", uu_hashsum::uumain);
map.insert(\"shake256sum\", uu_hashsum::uumain);\n"
"arch"
| "base32" | "base64" | "basename"
| "cat" | "chgrp" | "chmod" | "chown" | "chroot" | "cksum" | "comm" | "cp" | "cut"
| "date" | "df" | "dircolors" | "dirname" | "du"
| "echo" | "env" | "expand" | "expr"
| "factor" | "fmt" | "fold"
| "groups"
| "head" | "hostid" | "hostname"
| "id" | "install"
| "join"
| "kill"
| "link" | "ln" | "logname" | "ls"
| "mkdir" | "mkfifo" | "mknod" | "mktemp" | "more" | "mv"
| "nice" | "nl" | "nohup" | "nproc" | "numfmt"
| "od"
| "paste" | "pathchk" | "pinky" | "printenv" | "printf" | "ptx" | "pwd"
| "readlink" | "realpath" | "relpath" | "rm" | "rmdir"
| "seq" | "shred" | "shuf" | "sleep" | "sort" | "split" | "stat" | "stdbuf" | "sum" | "sync"
| "tac" | "tail" | "tee" | "test" | "timeout" | "touch" | "tr" | "truncate" | "tsort" | "tty"
| "uname" | "unexpand" | "uniq" | "unlink" | "uptime" | "users"
| "wc" | "who" | "whoami"
| "yes"
=> mf
.write_all(
format!("map.insert(\"{krate}\", {krate}::uumain);\n", krate = krate)
.as_bytes(),
)
.unwrap();
}
.unwrap(),
"false" | "true" => mf
.write_all(
format!("map.insert(\"{krate}\", r#{krate}::uumain);\n", krate = krate)
.as_bytes(),
)
.unwrap(),
"hashsum" => mf
.write_all(
format!(
"
map.insert(\"{krate}\", {krate}::uumain);
map.insert(\"md5sum\", {krate}::uumain);
map.insert(\"sha1sum\", {krate}::uumain);
map.insert(\"sha224sum\", {krate}::uumain);
map.insert(\"sha256sum\", {krate}::uumain);
map.insert(\"sha384sum\", {krate}::uumain);
map.insert(\"sha512sum\", {krate}::uumain);
map.insert(\"sha3sum\", {krate}::uumain);
map.insert(\"sha3-224sum\", {krate}::uumain);
map.insert(\"sha3-256sum\", {krate}::uumain);
map.insert(\"sha3-384sum\", {krate}::uumain);
map.insert(\"sha3-512sum\", {krate}::uumain);
map.insert(\"shake128sum\", {krate}::uumain);
map.insert(\"shake256sum\", {krate}::uumain);\n",
krate = krate
)
.as_bytes(),
)
.unwrap(),
_ => mf
.write_all(
format!(