181 lines
4.7 KiB
YAML
181 lines
4.7 KiB
YAML
name: publish
|
||
|
||
on:
|
||
push:
|
||
tags:
|
||
- "v*.*.*"
|
||
|
||
env:
|
||
draft: true
|
||
|
||
jobs:
|
||
wasm3-windows:
|
||
runs-on: windows-latest
|
||
name: ${{ matrix.config.target }}
|
||
timeout-minutes: 10
|
||
|
||
strategy:
|
||
fail-fast: false
|
||
matrix:
|
||
config:
|
||
- {target: wasm3-win-x64, platform: "-A x64", toolset: "-T ClangCL" }
|
||
- {target: wasm3-win-x86, platform: "-A Win32", toolset: "-T ClangCL" }
|
||
- {target: wasm3-strace-win-x64, platform: "-A x64", toolset: "-T ClangCL", cflags: "-DDEBUG -Dd_m3EnableStrace=2 -Dd_m3RecordBacktraces=1" }
|
||
|
||
env:
|
||
LDFLAGS: -s
|
||
steps:
|
||
- uses: actions/checkout@v2
|
||
- name: Configure
|
||
env:
|
||
CFLAGS: ${{ matrix.config.cflags }}
|
||
run: |
|
||
mkdir build
|
||
cd build
|
||
cmake ${{ matrix.config.platform }} ${{ matrix.config.toolset }} ..
|
||
- name: Build
|
||
run: |
|
||
cmake --build build --config Release
|
||
cp ./build/Release/wasm3.exe ./${{ matrix.config.target }}.exe
|
||
- name: Publish
|
||
uses: softprops/action-gh-release@v1
|
||
with:
|
||
draft: ${{ env.draft }}
|
||
files: "*.exe"
|
||
env:
|
||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||
|
||
wasm3-linux-x64:
|
||
runs-on: ubuntu-latest
|
||
timeout-minutes: 10
|
||
|
||
steps:
|
||
- uses: actions/checkout@v2
|
||
- name: Setup musl
|
||
run: |
|
||
sudo apt update
|
||
sudo apt install musl-tools
|
||
- name: Setup cmake
|
||
uses: jwlawson/actions-setup-cmake@v1.9
|
||
with:
|
||
cmake-version: '3.16.x'
|
||
- name: Configure
|
||
env:
|
||
CC: musl-gcc
|
||
LDFLAGS: "-static -s"
|
||
run: |
|
||
mkdir build
|
||
cd build
|
||
cmake --version
|
||
cmake ..
|
||
- name: Build
|
||
run: |
|
||
cmake --build build --verbose
|
||
cp ./build/wasm3 ./wasm3-linux-x64.elf
|
||
- name: Publish
|
||
uses: softprops/action-gh-release@v1
|
||
with:
|
||
draft: ${{ env.draft }}
|
||
files: "*.elf"
|
||
env:
|
||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||
|
||
wasm3-cosmopolitan:
|
||
runs-on: ubuntu-latest
|
||
timeout-minutes: 10
|
||
|
||
steps:
|
||
- uses: actions/checkout@v2
|
||
- name: Build αcτµαlly pδrταblε εxεcµταblε
|
||
run: |
|
||
cd platforms/cosmopolitan
|
||
./build.sh
|
||
cp ./wasm3.com ../../wasm3-cosmopolitan.com
|
||
cp ./wasm3.com.dbg ../../wasm3-cosmopolitan.com.dbg
|
||
- name: Publish
|
||
uses: softprops/action-gh-release@v1
|
||
with:
|
||
draft: ${{ env.draft }}
|
||
files: |
|
||
*.com
|
||
*.com.dbg
|
||
env:
|
||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||
|
||
wasm3-wasi:
|
||
runs-on: ubuntu-latest
|
||
timeout-minutes: 10
|
||
|
||
env:
|
||
LDFLAGS: -s
|
||
steps:
|
||
- uses: actions/checkout@v2
|
||
- name: Install Python dependencies
|
||
run: |
|
||
python3 -m pip install pip==20.1.1
|
||
python3 -m pip install --upgrade setuptools wheel
|
||
pip3 --version
|
||
- name: Install Wasienv
|
||
env:
|
||
WASMER_RELEASE_TAG: "1.0.2"
|
||
run: curl https://raw.githubusercontent.com/wasienv/wasienv/master/install.sh | sh
|
||
- name: Configure
|
||
run: |
|
||
source $HOME/.wasienv/wasienv.sh
|
||
mkdir build
|
||
cd build
|
||
wasimake cmake ..
|
||
- name: Build
|
||
run: |
|
||
source $HOME/.wasienv/wasienv.sh
|
||
cmake --build build
|
||
cp ./build/wasm3.wasm ./wasm3-wasi.wasm
|
||
- name: Configure, Build wasm3-strace
|
||
env:
|
||
CFLAGS: -DDEBUG -Dd_m3EnableStrace=2 -Dd_m3RecordBacktraces=1
|
||
run: |
|
||
source $HOME/.wasienv/wasienv.sh
|
||
mkdir build-strace
|
||
cd build-strace
|
||
wasimake cmake ..
|
||
cmake --build .
|
||
cp ./wasm3.wasm ../wasm3-strace.wasm
|
||
- name: Publish
|
||
uses: softprops/action-gh-release@v1
|
||
with:
|
||
draft: ${{ env.draft }}
|
||
files: "*.wasm"
|
||
env:
|
||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||
|
||
wasm3-android-coremark:
|
||
runs-on: ubuntu-latest
|
||
timeout-minutes: 10
|
||
|
||
steps:
|
||
- uses: actions/checkout@v2
|
||
- uses: seanmiddleditch/gha-setup-ninja@master
|
||
- name: Set up JDK 1.8
|
||
uses: actions/setup-java@v1
|
||
with:
|
||
java-version: 1.8
|
||
- name: Install NDK
|
||
run: |
|
||
sudo ${ANDROID_HOME}/tools/bin/sdkmanager --install "ndk;22.1.7171670"
|
||
sudo ${ANDROID_HOME}/tools/bin/sdkmanager --uninstall "cmake;3.18.1"
|
||
sudo ${ANDROID_HOME}/tools/bin/sdkmanager --install "cmake;3.10.2.4988404"
|
||
- name: Build
|
||
run: |
|
||
cd platforms/android
|
||
./gradlew build
|
||
- name: Copy
|
||
run: |
|
||
cp ./platforms/android/app/build/outputs/apk/debug/app-debug.apk ./wasm3-android-coremark.apk
|
||
- name: Publish
|
||
uses: softprops/action-gh-release@v1
|
||
with:
|
||
draft: ${{ env.draft }}
|
||
files: "*.apk"
|
||
env:
|
||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|