Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 36 additions & 0 deletions .github/workflows/before_deploy.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
set -ex

main() {
local tag=$(git tag --points-at HEAD)
local src=$(pwd) \
stage=

if [ "$OS_NAME" = "macOS-latest" ]; then
stage=$(mktemp -d -t tmp)
else
stage=$(mktemp -d)
fi

(cd capi/bind_gen && cargo run)

cp -r capi/bindings $stage/
cp target/$TARGET/release/livesplit_core.dll $stage/livesplit_core.dll 2>/dev/null || :
cp target/$TARGET/release/livesplit_core.lib $stage/livesplit_core.lib 2>/dev/null || :
cp target/$TARGET/release/liblivesplit_core.a $stage/liblivesplit_core.a 2>/dev/null || :
cp target/$TARGET/release/liblivesplit_core.so $stage/liblivesplit_core.so 2>/dev/null || :
cp target/$TARGET/release/livesplit*.js* $stage/. 2>/dev/null || :
cp target/$TARGET/release/deps/*.wasm $stage/livesplit.wasm 2>/dev/null || :
cp target/$TARGET/release/liblivesplit_core.dylib $stage/liblivesplit_core.dylib 2>/dev/null || :

cd $stage
if [ "$OS_NAME" = "windows-latest" ]; then
7z a $src/livesplit-core-$tag-$TARGET.zip *
else
tar czf $src/livesplit-core-$tag-$TARGET.tar.gz *
fi
cd $src

rm -rf $stage
}

main
16 changes: 16 additions & 0 deletions .github/workflows/build_shared.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
set -ex

main() {
local cargo=cross
if [ "$SKIP_CROSS" = "skip" ]; then
cargo=cargo
fi
local release_flag=""
if [ "$IS_DEPLOY" = "true" ]; then
release_flag="--release"
fi

$cargo build -p cdylib --target $TARGET $release_flag
}

main
31 changes: 31 additions & 0 deletions .github/workflows/build_static.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
set -ex

main() {
local cargo=cross
if [ "$SKIP_CROSS" = "skip" ]; then
cargo=cargo
fi
local release_flag=""
if [ "$IS_DEPLOY" = "true" ]; then
release_flag="--release"
fi

case $TARGET in
asmjs-unknown-emscripten)
$cargo build -p livesplit --target $TARGET --release
;;
wasm32-unknown-emscripten)
rm target/wasm32-unknown-emscripten/release/deps/*.wasm 2>/dev/null || :
rm target/wasm32-unknown-emscripten/release/deps/*.js 2>/dev/null || :
$cargo build -p livesplit --target $TARGET --release
;;
wasm32-unknown-unknown)
$cargo build -p cdylib --target $TARGET --release
;;
*)
$cargo build -p staticlib --target $TARGET $release_flag
;;
esac
}

main
33 changes: 33 additions & 0 deletions .github/workflows/install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
set -ex

main() {
local target=
if [ "$OS_NAME" = "ubuntu-latest" ]; then
target=x86_64-unknown-linux-musl
sort=sort
else
target=x86_64-apple-darwin
sort=gsort
fi

# This fetches latest stable release
# local tag=$(git ls-remote --tags --refs --exit-code https://github.com/japaric/cross \
# | cut -d/ -f3 \
# | grep -E '^v[0.1.0-9.]+$' \
# | $sort --version-sort \
# | tail -n1)

# FIXME: We use a custom pre-release version that works with GitHub Actions.
# Also don't forget to also change back from CryZe/cross down there.
# https://github.com/LiveSplit/livesplit-core/issues/237
local tag=v0.1.16-pre

curl -LSfs https://japaric.github.io/trust/install.sh | \
sh -s -- \
--force \
--git CryZe/cross \
--tag $tag \
--target $target
}

main
Loading