Skip to content

ondk build

ondk build #80

Workflow file for this run

name: ondk build
on:
workflow_dispatch:
release:
types: [published]
jobs:
# linux:
# name: Build for Linux
# runs-on: ubuntu-20.04
# steps:
# - name: Check out
# uses: actions/checkout@v4
# with:
# fetch-depth: 1
# - name: Set up Python 3
# uses: actions/setup-python@v5
# with:
# python-version: "3.x"
# - name: Build toolchain
# run: |
# sudo apt-get -y install cmake ninja-build libzstd-dev binutils-dev
# wget https://apt.llvm.org/llvm.sh
# chmod +x llvm.sh
# sudo ./llvm.sh 18
# rm llvm.sh
# ./build.sh
# - name: Upload build artifact
# uses: actions/upload-artifact@v4
# if: ${{ github.event_name == 'workflow_dispatch' }}
# with:
# name: ondk-linux
# path: dist/*.tar.xz
# - name: Upload release assets
# uses: softprops/action-gh-release@v2
# if: ${{ github.event_name == 'release' }}
# with:
# files: dist/*.tar.xz
windows:
name: Build for Windows
runs-on: windows-latest
defaults:
run:
shell: msys2 {0}
steps:
- name: Check out
uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Setup MSYS2
uses: msys2/setup-msys2@v2
with:
msystem: UCRT64
update: true
install: make diffutils tar patch unzip gzip
pacboy: python:p cmake:p gcc:p ninja:p zstd:p clang:p lld:p libc++:p
- name: Build toolchain
run: |
cp -r $GITHUB_WORKSPACE /c/ondk
cd /c/ondk
bash build-windows.sh
- name: Upload build artifact
uses: actions/upload-artifact@v4
if: ${{ github.event_name == 'workflow_dispatch' }}
with:
name: ondk-windows
path: C:\ondk\dist\*.tar.xz
- name: Upload release assets
uses: softprops/action-gh-release@v2
if: ${{ github.event_name == 'release' }}
with:
files: C:/ondk/dist/*.tar.xz
# macos-x64:
# name: Build for macOS (x64)
# runs-on: macos-13
# steps:
# - name: Check out
# uses: actions/checkout@v4
# with:
# fetch-depth: 1
# - name: Set up Python 3
# uses: actions/setup-python@v5
# with:
# python-version: "3.x"
# - name: Build toolchain
# run: |
# brew reinstall ninja zstd binutils
# ./build.sh clone build
# mkdir tmp
# tar c out | xz --x86 --lzma2 > tmp/out.x64.tar.xz
# - name: Upload build artifact
# uses: actions/upload-artifact@v4
# with:
# name: macos-x64
# path: tmp/*.tar.xz
# macos-arm64:
# name: Build for macOS (arm64)
# runs-on: macos-14
# steps:
# - name: Check out
# uses: actions/checkout@v4
# with:
# fetch-depth: 1
# - name: Set up Python 3
# uses: actions/setup-python@v5
# with:
# python-version: "3.x"
# - name: Build toolchain
# run: |
# brew reinstall ninja zstd binutils
# ./build.sh clone build
# mkdir tmp
# tar c out | xz > tmp/out.arm64.tar.xz
# - name: Upload build artifact
# uses: actions/upload-artifact@v4
# with:
# name: macos-arm64
# path: tmp/*.tar.xz
# macos:
# name: Build for macOS (Universal)
# runs-on: macos-14
# needs: [macos-x64, macos-arm64]
# steps:
# - name: Check out
# uses: actions/checkout@v4
# with:
# fetch-depth: 1
# - name: Download x64 artifacts
# uses: actions/download-artifact@v4
# with:
# name: macos-x64
# path: tmp
# - name: Download arm64 artifacts
# uses: actions/download-artifact@v4
# with:
# name: macos-arm64
# path: tmp
# - name: Build ONDK
# run: ./dist-macos.sh
# - name: Upload build artifact
# uses: actions/upload-artifact@v4
# if: ${{ github.event_name == 'workflow_dispatch' }}
# with:
# name: ondk-macos
# path: dist/*.tar.xz
# - name: Upload release assets
# uses: softprops/action-gh-release@v2
# if: ${{ github.event_name == 'release' }}
# with:
# files: dist/*.tar.xz
# - name: Remove x64 artifact
# uses: geekyeggo/delete-artifact@v4
# with:
# name: macos-x64
# failOnError: false
# - name: Remove arm64 artifact
# uses: geekyeggo/delete-artifact@v4
# with:
# name: macos-arm64
# failOnError: false