Skip to content

NES Clang builder

NES Clang builder #125

Workflow file for this run

name: NES Clang builder
on:
push:
tags:
- 'v*'
jobs:
build-x64-linux:
runs-on: [self-hosted, linux, '${{matrix.arch}}', dep-builder]
strategy:
fail-fast: false
matrix:
arch: ['x64', 'arm64']
stdlib: ['libcxx', 'libstdcxx']
sanitizer: ['none', 'address', 'thread', 'undefined']
steps:
- uses: AutoModality/action-clean@v1
- uses: actions/checkout@v2
with:
submodules: 'recursive'
- name: Build Clang
id: installdeps
run: |
docker run -v ccache:/ccache -e CCACHE_DIR=/ccache -v ${{ github.workspace }}:/build_dir -e ENABLE_SANITIZER=${{ matrix.sanitizer }} -e STDLIB=${{ matrix.stdlib }} --rm nebulastream/nes-development-base:libcxx_enumerate ./build_dir/build_llvm.sh
- name: Compress artifacts
id: compressdeps
run: |
ZSTD_CLEVEL=19 ZSTD_NBTHREADS=0 tar --zstd -cf nes-llvm-20-${{ matrix.arch }}-${{ matrix.sanitizer }}-${{ matrix.stdlib }}.tar.zstd clang
- name: Release
uses: softprops/action-gh-release@v1
id: createrelease
with:
files: |
nes-llvm-20-${{ matrix.arch }}-${{ matrix.sanitizer }}-${{ matrix.stdlib }}.tar.zstd
- name: Clean build artifacts
id: cleanbuildartifacts
if: always()
run: |
rm -rf llvm-project
rm -rf .git
rm -rf clang