mirror of
https://chromium.googlesource.com/crosvm/crosvm
synced 2024-12-26 21:38:25 +00:00
28 lines
881 B
Rust
28 lines
881 B
Rust
|
// Copyright 2017 The Chromium OS Authors. All rights reserved.
|
||
|
// Use of this source code is governed by a BSD-style license that can be
|
||
|
// found in the LICENSE file.
|
||
|
|
||
|
extern crate protoc_rust;
|
||
|
|
||
|
use std::env;
|
||
|
use std::fs;
|
||
|
use std::io::Write;
|
||
|
use std::path::PathBuf;
|
||
|
|
||
|
fn main() {
|
||
|
let out_dir = PathBuf::from(env::var("OUT_DIR").unwrap());
|
||
|
|
||
|
protoc_rust::run(protoc_rust::Args {
|
||
|
out_dir: out_dir.as_os_str().to_str().unwrap(),
|
||
|
input: &["protos/plugin.proto"],
|
||
|
includes: &["protos"],
|
||
|
})
|
||
|
.expect("protoc");
|
||
|
|
||
|
let mut mod_out = fs::File::create(out_dir.join("proto_include.rs")).unwrap();
|
||
|
writeln!(mod_out,
|
||
|
"#[path = \"{}\"] pub mod plugin_proto;\npub use plugin_proto::*;",
|
||
|
out_dir.join("plugin.rs").display())
|
||
|
.unwrap();
|
||
|
}
|