mirror of
https://github.com/asciinema/asciinema.git
synced 2025-12-15 19:28:00 +01:00
Add build script, generate man page at build-time
This commit is contained in:
17
Cargo.lock
generated
17
Cargo.lock
generated
@@ -88,6 +88,7 @@ dependencies = [
|
||||
"avt",
|
||||
"axum",
|
||||
"clap",
|
||||
"clap_mangen",
|
||||
"config",
|
||||
"futures-util",
|
||||
"mime_guess",
|
||||
@@ -335,6 +336,16 @@ version = "0.6.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1"
|
||||
|
||||
[[package]]
|
||||
name = "clap_mangen"
|
||||
version = "0.2.20"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "e1dd95b5ebb5c1c54581dd6346f3ed6a79a3eef95dd372fc2ac13d535535300e"
|
||||
dependencies = [
|
||||
"clap",
|
||||
"roff",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "clipboard-win"
|
||||
version = "5.1.0"
|
||||
@@ -1642,6 +1653,12 @@ dependencies = [
|
||||
"windows-sys 0.52.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "roff"
|
||||
version = "0.2.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b833d8d034ea094b1ea68aa6d5c740e0d04bad9d16568d08ba6f76823a114316"
|
||||
|
||||
[[package]]
|
||||
name = "rust-embed"
|
||||
version = "8.2.0"
|
||||
|
||||
@@ -44,5 +44,10 @@ tokio-tungstenite = { version = "0.21.0", features = ["rustls-tls-webpki-roots"]
|
||||
sha2 = "0.10.8"
|
||||
tokio-util = "0.7.10"
|
||||
|
||||
[build-dependencies]
|
||||
clap = { version = "4.4.7", features = ["derive"] }
|
||||
clap_mangen = "0.2.20"
|
||||
url = "2.5.0"
|
||||
|
||||
[profile.release]
|
||||
strip = true
|
||||
|
||||
20
build.rs
Normal file
20
build.rs
Normal file
@@ -0,0 +1,20 @@
|
||||
use clap::CommandFactory;
|
||||
use clap_mangen::Man;
|
||||
use std::env;
|
||||
use std::fs;
|
||||
use std::io;
|
||||
use std::path::PathBuf;
|
||||
|
||||
mod cli {
|
||||
include!("src/cli.rs");
|
||||
}
|
||||
|
||||
fn main() -> std::io::Result<()> {
|
||||
let out_dir = PathBuf::from(env::var_os("OUT_DIR").ok_or(io::ErrorKind::NotFound)?);
|
||||
let cmd = cli::Cli::command();
|
||||
let man = Man::new(cmd);
|
||||
let mut buffer: Vec<u8> = Default::default();
|
||||
man.render(&mut buffer)?;
|
||||
|
||||
fs::write(out_dir.join("asciinema.1"), buffer)
|
||||
}
|
||||
Reference in New Issue
Block a user