blob: 0ffca06cd46f8bd2d5bf6430ca542f4aba1c3ed9 [file] [log] [blame]
extern crate cc;
use std::env;
use std::process::Command;
use std::path::Path;
fn main() {
if !Path::new("brotli/.git").exists() {
let _ = Command::new("git").args(&["submodule", "update", "--init"])
.status();
}
let src = env::current_dir().unwrap();
println!("cargo:include={}", src.join("brotli/include").display());
cc::Build::new()
.include("brotli/include")
.warnings(false)
.file("brotli/common/dictionary.c")
.file("brotli/dec/bit_reader.c")
.file("brotli/dec/decode.c")
.file("brotli/dec/huffman.c")
.file("brotli/dec/state.c")
.file("brotli/enc/backward_references.c")
.file("brotli/enc/backward_references_hq.c")
.file("brotli/enc/bit_cost.c")
.file("brotli/enc/block_splitter.c")
.file("brotli/enc/brotli_bit_stream.c")
.file("brotli/enc/cluster.c")
.file("brotli/enc/compress_fragment.c")
.file("brotli/enc/compress_fragment_two_pass.c")
.file("brotli/enc/dictionary_hash.c")
.file("brotli/enc/encode.c")
.file("brotli/enc/entropy_encode.c")
.file("brotli/enc/histogram.c")
.file("brotli/enc/literal_cost.c")
.file("brotli/enc/memory.c")
.file("brotli/enc/metablock.c")
.file("brotli/enc/static_dict.c")
.file("brotli/enc/utf8_util.c")
.compile("libbrotli.a");
}