From 95b58287a4e3b2b3b5e40de6dbec66446fe01471 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sa=C3=BAl=20Ibarra=20Corretg=C3=A9?= Date: Wed, 22 Nov 2023 22:46:07 +0100 Subject: [PATCH] Add workflow for making releases --- .github/workflows/release.yml | 110 ++++++++++++++++++++++++++++++++++ 1 file changed, 110 insertions(+) create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 00000000..946f6258 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,110 @@ +name: ci + +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: | + make + mv build/qjs build/qjs-linux-x86 + - name: check + shell: alpine.sh {0} + run: | + ldd build/qjs-linux-x86 + - name: upload + uses: actions/upload-artifact@v3 + with: + 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: | + make + mv build/qjs build/qjs-linux-x86_64 + - name: check + shell: alpine.sh {0} + run: | + ldd build/qjs-linux-x86_64 + - name: upload + uses: actions/upload-artifact@v3 + with: + 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: + path: build/qjs-darwin + + windows: + runs-on: windows-latest + defaults: + run: + shell: msys2 {0} + steps: + - uses: actions/checkout@v3 + - name: Setup MSYS2 + uses: msys2/setup-msys2@v2 + with: + 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: + path: build/qjs-windows-x86_64.exe + + upload-to-release: + runs-on: ubuntu-latest + needs: [linux-x86, linux-x86_64, macos, windows] + steps: + - name: get assets + uses: actions/download-artifact@v3 + with: + path: assets + - name: upload to release + run: | + ls -lh assets + echo "TODO"