Skip to content

Commit 4d8729c

Browse files
committed
Build as static library
1 parent 637fda0 commit 4d8729c

File tree

7 files changed

+51
-30
lines changed

7 files changed

+51
-30
lines changed

.github/actions/linux/action.yml

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,5 @@ runs:
3030
name: linux-library
3131
retention-days: 14
3232
path: |
33-
libpowersync_x64.so
34-
libpowersync_x86.so
35-
libpowersync_aarch64.so
36-
libpowersync_armv7.so
37-
libpowersync_riscv64gc.so
33+
*.so
34+
*.linux.a

.github/actions/macos/action.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,5 +22,5 @@ runs:
2222
name: macos-library
2323
retention-days: 14
2424
path: |
25-
libpowersync_x64.dylib
26-
libpowersync_aarch64.dylib
25+
*.dylib
26+
*.macos.a

.github/actions/windows/action.yml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,5 @@ runs:
2323
name: windows-library
2424
retention-days: 14
2525
path: |
26-
powersync_x64.dll
27-
powersync_aarch64.dll
28-
powersync_x86.dll
26+
*.dll
27+
*.lib

.github/workflows/release.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -201,8 +201,10 @@ jobs:
201201
GH_REPO: ${{ github.repository }}
202202
run: |
203203
gh release upload "${{ needs.draft_release.outputs.tag }}" *.dll
204+
gh release upload "${{ needs.draft_release.outputs.tag }}" *.lib
204205
gh release upload "${{ needs.draft_release.outputs.tag }}" *.dylib
205206
gh release upload "${{ needs.draft_release.outputs.tag }}" *.so
207+
gh release upload "${{ needs.draft_release.outputs.tag }}" *.a
206208
207209
publish_wasm:
208210
name: Publish WASM builds

tool/build_linux.sh

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,32 @@
11
#!/bin/sh
22
set -e
33

4+
function compile() {
5+
local triple=$1
6+
local suffix=$2
7+
8+
cargo build -p powersync_loadable -Z build-std=panic_abort,core,alloc --release --target $triple
9+
cargo build -p powersync_static -Z build-std=panic_abort,core,alloc --release --target $triple
10+
11+
mv "target/$triple/release/libpowersync.so" "libpowersync_$suffix.so"
12+
mv "target/$triple/release/libpowersync.a" "libpowersync_$suffix.linux.a"
13+
}
14+
415
case "$1" in
516
x64)
6-
cargo build -p powersync_loadable -Z build-std=panic_abort,core,alloc --release --target x86_64-unknown-linux-gnu
7-
mv "target/x86_64-unknown-linux-gnu/release/libpowersync.so" "libpowersync_x64.so"
17+
compile x86_64-unknown-linux-gnu x64
818
;;
919
x86)
10-
cargo build -p powersync_loadable -Z build-std=panic_abort,core,alloc --release --target i686-unknown-linux-gnu
11-
mv "target/i686-unknown-linux-gnu/release/libpowersync.so" "libpowersync_x86.so"
20+
compile i686-unknown-linux-gnu x86
1221
;;
1322
aarch64)
14-
cargo build -p powersync_loadable -Z build-std=panic_abort,core,alloc --release --target aarch64-unknown-linux-gnu
15-
mv "target/aarch64-unknown-linux-gnu/release/libpowersync.so" "libpowersync_aarch64.so"
23+
compile aarch64-unknown-linux-gnu aarch64
1624
;;
1725
armv7)
18-
cargo build -p powersync_loadable -Z build-std=panic_abort,core,alloc --release --target armv7-unknown-linux-gnueabihf
19-
mv "target/armv7-unknown-linux-gnueabihf/release/libpowersync.so" "libpowersync_armv7.so"
26+
compile armv7-unknown-linux-gnueabihf armv7
2027
;;
2128
riscv64gc)
22-
cargo build -p powersync_loadable -Z build-std=panic_abort,core,alloc --release --target riscv64gc-unknown-linux-gnu
23-
mv "target/riscv64gc-unknown-linux-gnu/release/libpowersync.so" "libpowersync_riscv64gc.so"
29+
compile riscv64gc-unknown-linux-gnu riscv64gc
2430
;;
2531
*)
2632
echo "Unknown architecture"

tool/build_macos.sh

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,19 @@
11
#!/bin/sh
22
set -e
33

4+
function compile() {
5+
local triple=$1
6+
local suffix=$2
7+
8+
cargo build -p powersync_loadable -Z build-std=panic_abort,core,alloc --release --target $triple
9+
cargo build -p powersync_static -Z build-std=panic_abort,core,alloc --release --target $triple
10+
11+
mv "target/$triple/release/libpowersync.dylib" "libpowersync_$suffix.dylib"
12+
mv "target/$triple/release/libpowersync.a" "libpowersync_$suffix.macos.a"
13+
}
14+
415
if [ "$1" = "x64" ]; then
5-
cargo build -Z build-std=panic_abort,core,alloc -p powersync_loadable --release --target x86_64-apple-darwin
6-
mv "target/x86_64-apple-darwin/release/libpowersync.dylib" "libpowersync_x64.dylib"
16+
compile x86_64-apple-darwin x64
717
else
8-
cargo build -Z build-std=panic_abort,core,alloc -p powersync_loadable --release --target aarch64-apple-darwin
9-
mv "target/aarch64-apple-darwin/release/libpowersync.dylib" "libpowersync_aarch64.dylib"
18+
compile aarch64-apple-darwin aarch64
1019
fi

tool/build_windows.sh

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,26 @@
11
#!/bin/sh
22
set -e
33

4+
function compile() {
5+
local triple=$1
6+
local suffix=$2
7+
8+
cargo build -p powersync_loadable -Z build-std=panic_abort,core,alloc --release --target $triple
9+
cargo build -p powersync_static -Z build-std=panic_abort,core,alloc --release --target $triple
10+
11+
mv "target/$triple/release/powersnc.dll" "powersync_$suffix.dll"
12+
mv "target/$triple/release/powersync.lib" "powersync_$suffix.lib"
13+
}
14+
415
case "$1" in
516
x64)
6-
cargo build -Z build-std=panic_abort,core,alloc -p powersync_loadable --release --target x86_64-pc-windows-msvc
7-
mv "target/x86_64-pc-windows-msvc/release/powersync.dll" "powersync_x64.dll"
17+
compile x86_64-pc-windows-msvc x64
818
;;
919
x86)
10-
cargo build -Z build-std=panic_abort,core,alloc -p powersync_loadable --release --target i686-pc-windows-msvc
11-
mv "target/i686-pc-windows-msvc/release/powersync.dll" "powersync_x86.dll"
20+
compile i686-pc-windows-msvc x86
1221
;;
1322
aarch64)
14-
cargo build -Z build-std=panic_abort,core,alloc -p powersync_loadable --release --target aarch64-pc-windows-msvc
15-
mv "target/aarch64-pc-windows-msvc/release/powersync.dll" "powersync_aarch64.dll"
23+
compile aarch64-pc-windows-msvc aarch64
1624
;;
1725
*)
1826
echo "Unknown architecture"

0 commit comments

Comments
 (0)