Extended keystore and customizable KELF header data (#9) #31
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: CI-compile | |
on: | |
push: | |
pull_request: | |
jobs: | |
build-windows: | |
name: Windows compilation | |
runs-on: windows-latest | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
- name: Setup msbuild | |
uses: microsoft/[email protected] | |
- run: choco install openssl --no-progress --x86 --version=1.1.1.2100 | |
- name: Build | |
run: msbuild /p:Configuration=Release | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: kelftool-windows | |
path: Release/kelftool.exe | |
build-macos: | |
name: MacOS compilation | |
runs-on: macos-latest | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
- run: brew install openssl | |
- name: Build | |
run: | | |
make | |
tar -zcvf kelftool-macos.tar.gz build/kelftool | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: kelftool-macos | |
path: kelftool-macos.tar.gz | |
build-ubuntu: | |
name: Ubuntu compilation | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
- run: sudo apt-get install libssl-dev | |
- name: Build | |
run: | | |
make | |
tar -zcvf kelftool-linux.tar.gz build/kelftool | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: kelftool-linux | |
path: kelftool-linux.tar.gz | |
release: | |
needs: [build-windows, build-macos, build-ubuntu] | |
runs-on: ubuntu-latest | |
if: startsWith(github.ref, 'refs/tags/v') || github.ref == 'refs/heads/master' | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Get short SHA and repository name | |
id: slug | |
run: | | |
echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)" | |
echo "::set-output name=REPOSITORY_NAME::$(echo "$GITHUB_REPOSITORY" | awk -F / '{print $2}' | sed -e "s/:refs//")" | |
- name: Download kelftool-windows artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: kelftool-windows | |
- name: Download kelftool-macos artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: kelftool-macos | |
- name: Download kelftool-linux artifact | |
uses: actions/download-artifact@v3 | |
with: | |
name: kelftool-linux | |
- name: Create pre-release | |
if: github.ref == 'refs/heads/master' | |
uses: marvinpinto/action-automatic-releases@latest | |
with: | |
repo_token: "${{ secrets.GITHUB_TOKEN }}" | |
prerelease: true | |
automatic_release_tag: "latest" | |
title: "Development build" | |
files: | | |
*.tar.gz | |
*.exe | |
- name: Create Tagged Release Draft | |
if: startsWith(github.ref, 'refs/tags/v') | |
uses: marvinpinto/action-automatic-releases@latest | |
with: | |
repo_token: "${{ secrets.GITHUB_TOKEN }}" | |
prerelease: false | |
draft: true | |
files: | | |
*.tar.gz | |
*.exe |