代码拉取完成,页面将自动刷新
extern crate cc;
use std::env;
use std::process::{Command, Stdio};
fn build_win_msvc() {
cc::Build::new()
.cpp(true)
.flag("-Zi")
.flag("-Gm")
.flag("-INCREMENTAL")
.warnings(false)
.define("WIN32", None)
.define("_WINDOWS", None)
.include("./src")
.include("./src/osg")
.file("./src/tileset.cpp")
.file("./src/shp23dtile.cpp")
.file("./src/osgb23dtile.cpp")
.file("./src/dxt_img.cpp")
.file("./src/make_gltf.cpp")
.compile("_3dtile");
// -------------
println!("cargo:rustc-link-search=native=./lib");
// -------------
println!("cargo:rustc-link-lib=gdal_i");
println!("cargo:rustc-link-lib=osg");
println!("cargo:rustc-link-lib=osgDB");
println!("cargo:rustc-link-lib=osgUtil");
println!("cargo:rustc-link-lib=osgViewer");
Command::new("cmd")
.args(&[
"/C",
"xcopy",
r#".\bin"#,
&format!(r#".\target\{}"#, env::var("PROFILE").unwrap()),
"/y",
"/e",
])
.stdout(Stdio::inherit())
.output()
.unwrap();
}
fn build_win_gun() {
cc::Build::new()
.cpp(true)
.flag("-std=c++11")
.warnings(false)
.define("WIN32", None)
.include("./src")
.include("./src/osg")
.file("./src/tileset.cpp")
.file("./src/shp23dtile.cpp")
.file("./src/osgb23dtile.cpp")
.file("./src/dxt_img.cpp")
.file("./src/make_gltf.cpp")
.compile("_3dtile");
// -------------
println!("cargo:rustc-link-search=native=./lib");
// -------------
println!("cargo:rustc-link-lib=gdal_i");
println!("cargo:rustc-link-lib=osg");
println!("cargo:rustc-link-lib=osgDB");
println!("cargo:rustc-link-lib=osgUtil");
println!("cargo:rustc-link-lib=OpenThreads");
Command::new("cmd")
.args(&[
"/C",
"xcopy",
r#".\bin"#,
&format!(r#".\target\{}"#, env::var("PROFILE").unwrap()),
"/y",
"/e",
])
.stdout(Stdio::inherit())
.output()
.unwrap();
}
fn build_linux_unkonw() {
cc::Build::new()
.cpp(true)
.flag("-std=c++11")
.warnings(false)
.include("./src")
.include("./src/osg")
.file("./src/tileset.cpp")
.file("./src/shp23dtile.cpp")
.file("./src/osgb23dtile.cpp")
.file("./src/dxt_img.cpp")
.file("./src/make_gltf.cpp")
.compile("_3dtile");
// -------------
println!("cargo:rustc-link-search=native=./lib");
// -------------
println!("cargo:rustc-link-lib=gdal");
println!("cargo:rustc-link-lib=OpenThreads");
println!("cargo:rustc-link-lib=osg");
println!("cargo:rustc-link-lib=osgDB");
println!("cargo:rustc-link-lib=osgUtil");
}
fn main() {
match env::var("TARGET") {
Ok(val) => match val.as_str() {
"x86_64-pc-windows-gnu" => build_win_gun(),
"x86_64-unknown-linux-gnu" => build_linux_unkonw(),
"x86_64-pc-windows-msvc" => build_win_msvc(),
&_ => {}
},
_ => {}
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。