]>
git.proxmox.com Git - cargo.git/blob - build.rs
1 use flate2
::{Compression, GzBuilder}
;
9 "cargo:rustc-env=RUST_HOST_TARGET={}",
10 std
::env
::var("TARGET").unwrap()
15 let out_path
= Path
::new(&std
::env
::var("OUT_DIR").unwrap()).join("man.tgz");
16 let dst
= fs
::File
::create(out_path
).unwrap();
17 let encoder
= GzBuilder
::new()
19 .write(dst
, Compression
::best());
20 let mut ar
= tar
::Builder
::new(encoder
);
21 ar
.mode(tar
::HeaderMode
::Deterministic
);
23 let mut add_files
= |dir
, extension
| {
24 let mut files
= fs
::read_dir(dir
)
26 .map(|e
| e
.unwrap().path())
30 if path
.extension() != Some(extension
) {
33 println
!("cargo:rerun-if-changed={}", path
.display());
34 ar
.append_path_with_name(&path
, path
.file_name().unwrap())
39 add_files(Path
::new("src/etc/man"), OsStr
::new("1"));
40 add_files(Path
::new("src/doc/man/generated_txt"), OsStr
::new("txt"));
41 let encoder
= ar
.into_inner().unwrap();
42 encoder
.finish().unwrap();