-
Notifications
You must be signed in to change notification settings - Fork 0
64 lines (59 loc) · 2.03 KB
/
build-llvm.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
name: "Build LLVM"
on:
workflow_dispatch:
inputs:
tag:
description: 'Git tag for the release.'
required: true
type: string
jobs:
build_llvm:
name: Build LLVM
strategy:
matrix:
# os: [ubuntu-20.04, macos-11, windows-2019]
# os: [ubuntu-20.04, macos-11]
os: [macos-11]
runs-on: ${{ matrix.os }}
# container:
# # Intentionally old ubuntu version with old glibc.
# image: ubuntu:18.04
steps:
- name: checkout
uses: actions/checkout@v3
# Install build dependencies.
# - if: contains(matrix.os, 'ubuntu')
# run: |
# apt update && apt install -y clang git wget build-essential python3 unzip
# # cmake from package manager is to old for the LLVM build.
# wget https://github.com/Kitware/CMake/releases/download/v3.30.0-rc2/cmake-3.30.0-rc2-linux-x86_64.sh
# chmod +x cmake-*.sh
# ./cmake-*.sh --skip-license --prefix=/usr
# # ninja from the package manager is to old for the LLVM build.
# wget https://github.com/ninja-build/ninja/releases/download/v1.12.1/ninja-linux.zip
# unzip ninja-linux.zip -d /usr/bin/
# Build and package LLVM.
- run: "./build-llvm-libs.sh llvm-static-libs-${{ matrix.os }}.tar.gz"
- uses: actions/upload-artifact@v4
with:
name: llvm-static-libs-${{ matrix.os }}
path: llvm-static-libs-${{ matrix.os }}.tar.gz
create_release:
name: Create release
runs-on: ubuntu-latest
needs: [build_llvm]
permissions:
contents: write # for creating releases
steps:
- name: Download Artifacts
uses: actions/download-artifact@v4
with:
pattern: llvm-static-libs-*
merge-multiple: true
- name: Create Release
uses: softprops/action-gh-release@v2
with:
name: LLVM tooling libraries ${{ inputs.tag }}
tag_name: ${{ inputs.tag }}
files: llvm-static-libs-*
fail_on_unmatched_files: true