Skip to content

Commit

Permalink
feat: build llvm in docker
Browse files Browse the repository at this point in the history
  • Loading branch information
simonresch committed Feb 14, 2025
1 parent 698e7cb commit 660245a
Showing 1 changed file with 30 additions and 10 deletions.
40 changes: 30 additions & 10 deletions .github/workflows/build-llvm.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,30 +9,50 @@ on:
type: string

jobs:
build_llvm:
build_llvm_mac:
name: Build LLVM
runs-on: macos-14
steps:
- name: checkout
uses: actions/checkout@v3
- run: "brew install ninja"
# Build and package LLVM.
- run: "./build-llvm-libs.sh llvm-static-libs-macos-14.tar.gz"
- uses: actions/upload-artifact@v4
with:
name: llvm-static-libs-macos-14
path: llvm-static-libs-macos-14.tar.gz

build_llvm_linux:
name: Build LLVM
strategy:
matrix:
os: [ubuntu-20.04, ubuntu-24.04-arm, macos-14]
os: [ubuntu-24.04, ubuntu-24.04-arm]
runs-on: ${{ matrix.os }}
container: ubuntu:20.04
env:
DEBIAN_FRONTEND: noninteractive
steps:
- name: checkout
uses: actions/checkout@v3
- if: contains(matrix.os, 'ubuntu')
run: "sudo apt update && sudo apt install -y ninja-build"
- if: contains(matrix.os, 'macos')
run: "brew install ninja"
- run: "apt update && apt install -y ninja-build clang git wget"
# Install recent CMake.
- run: |
wget https://github.com/Kitware/CMake/releases/download/v3.31.5/cmake-3.31.5-linux-x86_64.sh
chmod +x cmake-3.31.5-linux-x86_64.sh
./cmake-3.31.5-linux-x86_64.sh --skip-license --prefix=/usr/local
rm cmake-3.31.5-linux-x86_64.sh
# Build and package LLVM.
- run: "./build-llvm-libs.sh llvm-static-libs-${{ matrix.os }}.tar.gz"
- run: "./build-llvm-libs.sh llvm-static-libs-ubuntu-20.04-${{ runner.arch }}.tar.gz"
- uses: actions/upload-artifact@v4
with:
name: llvm-static-libs-${{ matrix.os }}
path: llvm-static-libs-${{ matrix.os }}.tar.gz
name: llvm-static-libs-ubuntu-20.04-${{ runner.arch }}
path: llvm-static-libs-ubuntu-20.04-${{ runner.arch }}.tar.gz

create_release:
name: Create release
runs-on: ubuntu-latest
needs: [build_llvm]
needs: [build_llvm_mac, build_llvm_linux]
permissions:
contents: write # for creating releases
steps:
Expand Down

0 comments on commit 660245a

Please sign in to comment.