Add workflow for making releases #10
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: release | ||
on: | ||
pull_request: | ||
jobs: | ||
linux-x86: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: jirutka/setup-alpine@v1 | ||
with: | ||
arch: x86 | ||
packages: "build-base make cmake" | ||
- name: build | ||
shell: alpine.sh {0} | ||
run: | | ||
mkdir build | ||
cd build | ||
cmake -DBUILD_STATIC_QJS_EXE=ON .. | ||
cd .. | ||
cmake --build build --target qjs_exe -j$(getconf _NPROCESSORS_ONLN) | ||
mv build/qjs build/qjs-linux-x86 | ||
- name: check | ||
shell: alpine.sh {0} | ||
run: | | ||
file build/qjs-linux-x86 | ||
- name: upload | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: qjs | ||
path: build/qjs-linux-x86 | ||
linux-x86_64: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: jirutka/setup-alpine@v1 | ||
with: | ||
arch: x86_64 | ||
packages: "build-base make cmake" | ||
- name: build | ||
shell: alpine.sh {0} | ||
run: | | ||
mkdir build | ||
cd build | ||
cmake -DBUILD_STATIC_QJS_EXE=ON .. | ||
cd .. | ||
cmake --build build --target qjs_exe -j$(getconf _NPROCESSORS_ONLN) | ||
mv build/qjs build/qjs-linux-x86_64 | ||
- name: check | ||
shell: alpine.sh {0} | ||
run: | | ||
file build/qjs-linux-x86_64 | ||
- name: upload | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: qjs | ||
path: build/qjs-linux-x86_64 | ||
macos: | ||
runs-on: macos-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: build | ||
run: | | ||
mkdir build | ||
cd build | ||
cmake -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" .. | ||
make -j$(getconf _NPROCESSORS_ONLN) | ||
mv qjs qjs-darwin | ||
- name: check | ||
run: | | ||
lipo -info build/qjs-darwin | ||
- name: upload | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: qjs | ||
path: build/qjs-darwin | ||
windows-x86: | ||
runs-on: windows-latest | ||
defaults: | ||
run: | ||
shell: msys2 {0} | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Setup MSYS2 | ||
uses: msys2/setup-msys2@v2 | ||
with: | ||
msystem: mingw32 | ||
install: >- | ||
git | ||
make | ||
pacboy: >- | ||
cmake:p | ||
ninja:p | ||
toolchain:p | ||
- name: build | ||
run: | | ||
make | ||
mv build/qjs.exe build/qjs-windows-x86.exe | ||
- name: check | ||
run: | | ||
ldd build/qjs-windows-x86.exe | ||
- name: upload | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: qjs | ||
path: build/qjs-windows-x86.exe | ||
windows-x86_64: | ||
runs-on: windows-latest | ||
defaults: | ||
run: | ||
shell: msys2 {0} | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Setup MSYS2 | ||
uses: msys2/setup-msys2@v2 | ||
with: | ||
msystem: mingw64 | ||
install: >- | ||
git | ||
make | ||
pacboy: >- | ||
cmake:p | ||
ninja:p | ||
toolchain:p | ||
- name: build | ||
run: | | ||
make | ||
mv build/qjs.exe build/qjs-windows-x86_64.exe | ||
- name: check | ||
run: | | ||
ldd build/qjs-windows-x86_64.exe | ||
- name: upload | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: qjs | ||
path: build/qjs-windows-x86_64.exe | ||
upload-to-release: | ||
needs: [linux-x86, linux-x86_64, macos, windows] | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: get assets | ||
uses: actions/download-artifact@v3 | ||
with: | ||
path: build | ||
- name: upload to release | ||
run: | | ||
find . | ||
echo "TODO" |