difftreelog
ci bindings launch helper
in: master
2 files changed
Cargo.lockdiffbeforeafterboth507507508[[package]]508[[package]]509name = "jrsonnet-gcmodule"509name = "jrsonnet-gcmodule"510version = "0.3.6"510version = "0.3.7"511source = "registry+https://github.com/rust-lang/crates.io-index"511source = "registry+https://github.com/rust-lang/crates.io-index"512checksum = "c11fb98940a7f8b419619e98ccbf2e094671a5fdd0e277f05acd373071186d57"512checksum = "47975473b24b4503acee0d449fd5eda04ae18828f9811828a6cc99abbbbc38c8"513dependencies = [513dependencies = [514 "jrsonnet-gcmodule-derive",514 "jrsonnet-gcmodule-derive",515 "parking_lot",515 "parking_lot",516]516]517517518[[package]]518[[package]]519name = "jrsonnet-gcmodule-derive"519name = "jrsonnet-gcmodule-derive"520version = "0.3.6"520version = "0.3.7"521source = "registry+https://github.com/rust-lang/crates.io-index"521source = "registry+https://github.com/rust-lang/crates.io-index"522checksum = "6bee774b7ba86fc86ee84482cd6732aa860ae3559f9827c65efd75c51e66ac76"522checksum = "4782d1d76731f5e5bb4bdeff26ed3350f21d662f178ce6dee7b4da810e7a8f72"523dependencies = [523dependencies = [524 "proc-macro2",524 "proc-macro2",525 "quote",525 "quote",526 "syn 1.0.109",526 "syn 2.0.64",527]527]528528529[[package]]529[[package]]635dependencies = [635dependencies = [636 "jrsonnet-evaluator",636 "jrsonnet-evaluator",637 "jrsonnet-gcmodule",637 "jrsonnet-gcmodule",638 "jrsonnet-interner",638 "jrsonnet-parser",639 "jrsonnet-parser",639 "jrsonnet-stdlib",640 "jrsonnet-stdlib",640]641]780781781[[package]]782[[package]]782name = "parking_lot"783name = "parking_lot"783version = "0.12.2"784version = "0.12.3"784source = "registry+https://github.com/rust-lang/crates.io-index"785source = "registry+https://github.com/rust-lang/crates.io-index"785checksum = "7e4af0ca4f6caed20e900d564c242b8e5d4903fdacf31d3daf527b66fe6f42fb"786checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27"786dependencies = [787dependencies = [787 "lock_api",788 "lock_api",788 "parking_lot_core",789 "parking_lot_core",xtask/src/main.rsdiffbeforeafterboth26 #[arg(long)]26 #[arg(long)]27 fix: bool,27 fix: bool,28 },28 },29 TestCBindings {30 #[arg(long, default_value = "x86_64-unknown-linux-gnu")]31 target: String,32 args: Vec<String>,33 },29}34}303531fn main() -> Result<()> {36fn main() -> Result<()> {73 cmd!(sh, "cargo fmt {fmt_check...}").run()?;78 cmd!(sh, "cargo fmt {fmt_check...}").run()?;74 Ok(())79 Ok(())75 }80 }81 Opts::TestCBindings { target, args } => {82 cmd!(83 sh,84 "cargo build -p libjsonnet --target={target} --release --no-default-features --features=interop-common,interop-threading"85 )86 .run()?;87 let built = format!("./target/{target}/release/libjsonnet.a");88 let c_bindings = "./bindings/c/";89 let test_file = "libjsonnet_test_file";90 cmd!(sh, "cp {built} {c_bindings}").run()?;91 sh.change_dir(c_bindings);9293 // TODO: Pass target to gcc?94 cmd!(sh, "gcc -c {test_file}.c").run()?;95 cmd!(sh, "gcc -o {test_file} -lc -lm {test_file}.o libjsonnet.a").run()?;96 let sh = Shell::new()?;9798 cmd!(sh, "{c_bindings}{test_file} {args...}").run()?;99100 Ok(())101 }76 }102 }77}103}78104