@@ -3,17 +3,30 @@ set -euo pipefail
33
44script_dir=" $( dirname " $( readlink -f " ${BASH_SOURCE[0]} " ) " ) "
55
6- export LIBSQL_RS_VERSION=" 0.5.0"
76bindings_dir=" ${script_dir} /rust-bindings"
87force=false
8+ commit=" ${LIBSQL_COMMIT:- libsql-0.9.21} "
9+ remote=" ${LIBSQL_REMOTE:- https:// github.com/ tursodatabase/ libsql.git} "
10+ local_repo_path=" "
911
10- # Parse command line arguments
1112while [[ $# -gt 0 ]]; do
1213 case " $1 " in
1314 --force)
1415 force=true
1516 shift
1617 ;;
18+ --commit)
19+ commit=" $2 "
20+ shift 2
21+ ;;
22+ --remote)
23+ remote=" $2 "
24+ shift 2
25+ ;;
26+ --local)
27+ local_repo_path=" $2 "
28+ shift 2
29+ ;;
1730 * )
1831 echo " Unknown option: $1 "
1932 exit 1
@@ -29,23 +42,23 @@ function run_if_force {
2942
3043run_if_force rm -rf " ${bindings_dir} /libsql"
3144run_if_force rm -rf " ${bindings_dir} /target"
32- mkdir -p " ${bindings_dir} /libsql "
45+ mkdir -p " ${bindings_dir} "
3346
34- cd " ${bindings_dir} /libsql"
35- git init 2> /dev/null
47+ if [[ -n " ${local_repo_path} " ]]; then
48+ ln -sfn " ${local_repo_path} " " ${bindings_dir} /libsql"
49+ else
50+ mkdir -p " ${bindings_dir} /libsql"
51+ cd " ${bindings_dir} /libsql"
52+ git init 2> /dev/null
53+
54+ if ! git config remote.origin.url & > /dev/null; then
55+ git remote add --no-fetch origin " ${remote} "
56+ fi
3657
37- if ! git config remote.origin.url & > /dev/null; then
38- git remote add --no-fetch origin " https://github.com/tursodatabase/libsql.git"
58+ git fetch --quiet origin ${commit} --depth 1
59+ git checkout FETCH_HEAD
60+ cd ../..
3961fi
4062
41- # git sparse-checkout init
42- # git sparse-checkout set bindings/c bindings/wasm libsql libsql-sys
43- # -----
44- # git fetch --quiet origin
45- # git checkout fb85262
46- # -----
47- git fetch --depth 1 origin tag libsql-rs-v${LIBSQL_RS_VERSION}
48- git reset --hard tags/libsql-rs-v${LIBSQL_RS_VERSION}
49-
50- cd ..
51- cargo build --release
63+ cd " ${bindings_dir} "
64+ cargo build --lib --release
0 commit comments