make encoder and generator executable on linux #37
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: Build and publish | |
# run on pushes to master OR on version tag creation | |
on: | |
push: | |
branches: | |
- master | |
tags: | |
- v* | |
jobs: | |
build-windows: | |
runs-on: windows-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install CMake | |
uses: lukka/get-cmake@latest | |
- name: Build | |
uses: lukka/run-cmake@v10 | |
with: | |
configurePreset: x64-windows | |
buildPreset: Release | |
- name: Upload artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: fumo-windows | |
path: build/bin/Release/* | |
if-no-files-found: error | |
retention-days: 1 | |
build-linux: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install CMake | |
uses: lukka/get-cmake@latest | |
- name: Build | |
uses: lukka/run-cmake@v10 | |
with: | |
configurePreset: linux-embedding-tools | |
buildPreset: Linux Embedding Tools | |
- name: Upload artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: fumo-linux | |
path: build/bin/* | |
if-no-files-found: error | |
retention-days: 1 | |
publish: | |
runs-on: ubuntu-latest | |
needs: [build-windows, build-linux] | |
steps: | |
- name: Download artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
pattern: fumo-* | |
merge-multiple: true | |
- name: ZIP embedding tools | |
run: | | |
7z a -tzip -mx=9 -r embedding_tools.zip fumo_encoder.exe fumo_generator.exe initial_loader.bin stage1.dll | |
chmod +x fumo_encoder fumo_generator | |
7z a -tzip -mx=9 -r embedding_tools_linux.zip fumo_encoder fumo_generator initial_loader.bin stage1.dll | |
- name: Publish release (version tag) | |
if: startsWith(github.ref, 'refs/tags/v') | |
uses: marvinpinto/action-automatic-releases@latest | |
with: | |
repo_token: ${{ secrets.GITHUB_TOKEN }} | |
prerelease: false | |
draft: true | |
files: | | |
fumo.exe | |
fumo_encoder.exe | |
embedding_tools.zip | |
embedding_tools_linux.zip | |
- name: Publish pre-release (push to master) | |
if: github.ref == 'refs/heads/master' | |
uses: marvinpinto/action-automatic-releases@latest | |
with: | |
repo_token: ${{ secrets.GITHUB_TOKEN }} | |
automatic_release_tag: latest | |
title: Development build | |
prerelease: true | |
files: | | |
fumo.exe | |
fumo_encoder.exe | |
embedding_tools.zip | |
embedding_tools_linux.zip |