Add release builds for darwin/amd64 and darwin/arm64 #132
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
NOTE: This PR will be in progress after #130 is merged.
With this PR, two release builds for Intel and ARM MacOS have been added.
It's easy to cross-compile in Golang to target different OS, but our LBM contains some native compilation steps for the build. For the previous PR, we tried to use a docker container to cross-compile. It is, however, difficult to build binaries for MacOS on Linux, and the best way to build binaries for MacOS is to use Xcode on MacOS. So I switched to using the
macos
image on github actions instead of cross-building on a docker container. For this reason, the docker image andmake reproducible
for cross-compilation have been removed and they have been replaced by a simplemake build
inrelease-build.yml
.The current
lbm
v0.46.0 binaries depend on thelibwasmvm
v1.0.0-0.10.0 library. To run these release binaries, it needs to obtain the corresponding dynamic libraries in the table below from line/wasmvm.linux/amd64
libwasmvm.x86_64.so
linux/arm64
libwasmvm.aarch64.so
darwin/*
libwasmvm.dylib
Motivation and context
See Issue #116
How has this been tested?
linux/amd64
: On Docker container using theamd64/ubuntu:latest
image on a M1 macbook.linux/arm64
: On Docker container using theubuntu:latest
image on M1 macbook.darwin/amd64
: On M1 macbook (with Rosetta 2).darwin/arm64
: On M1 macbook.Screenshots (if appropriate):
Checklist: