git.delta.rocks / jrsonnet / refs/commits / c3d1c4f39003

difftreelog

ci bindings launch helper

Yaroslav Bolyukin2024-06-18parent: #c6e9f5b.patch.diff
in: master

2 files changed

modifiedCargo.lockdiffbeforeafterboth
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -507,9 +507,9 @@
 
 [[package]]
 name = "jrsonnet-gcmodule"
-version = "0.3.6"
+version = "0.3.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c11fb98940a7f8b419619e98ccbf2e094671a5fdd0e277f05acd373071186d57"
+checksum = "47975473b24b4503acee0d449fd5eda04ae18828f9811828a6cc99abbbbc38c8"
 dependencies = [
  "jrsonnet-gcmodule-derive",
  "parking_lot",
@@ -517,13 +517,13 @@
 
 [[package]]
 name = "jrsonnet-gcmodule-derive"
-version = "0.3.6"
+version = "0.3.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6bee774b7ba86fc86ee84482cd6732aa860ae3559f9827c65efd75c51e66ac76"
+checksum = "4782d1d76731f5e5bb4bdeff26ed3350f21d662f178ce6dee7b4da810e7a8f72"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.64",
 ]
 
 [[package]]
@@ -635,6 +635,7 @@
 dependencies = [
  "jrsonnet-evaluator",
  "jrsonnet-gcmodule",
+ "jrsonnet-interner",
  "jrsonnet-parser",
  "jrsonnet-stdlib",
 ]
@@ -780,9 +781,9 @@
 
 [[package]]
 name = "parking_lot"
-version = "0.12.2"
+version = "0.12.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7e4af0ca4f6caed20e900d564c242b8e5d4903fdacf31d3daf527b66fe6f42fb"
+checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27"
 dependencies = [
  "lock_api",
  "parking_lot_core",
modifiedxtask/src/main.rsdiffbeforeafterboth
26 #[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}
3035
31fn 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);
92
93 // 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()?;
97
98 cmd!(sh, "{c_bindings}{test_file} {args...}").run()?;
99
100 Ok(())
101 }
76 }102 }
77}103}
78104