@@ -13,49 +13,39 @@ jobs:
13
13
name : Build LLVM
14
14
strategy :
15
15
matrix :
16
- # os: [ubuntu-20.04, macos-11 , windows-2019]
17
- os : [ubuntu-20.04]
16
+ # os: [ubuntu-20.04, macos-12 , windows-2019]
17
+ os : [ubuntu-20.04, macos-14 ]
18
18
runs-on : ${{ matrix.os }}
19
- permissions :
20
- contents : write # for creating releases
21
- container :
22
- # Intentionally old ubuntu version with old glibc.
23
- image : ubuntu:18.04
24
19
steps :
25
20
- name : checkout
26
21
uses : actions/checkout@v3
27
-
28
- # Install build dependencies.
29
- - run : " apt update && apt install -y clang git wget build-essential python3 unzip"
30
- # cmake from package manager is to old for the LLVM build.
31
- - run : " wget https://github.com/Kitware/CMake/releases/download/v3.30.0-rc2/cmake-3.30.0-rc2-linux-x86_64.sh"
32
- - run : " chmod +x cmake-*.sh"
33
- - run : " ./cmake-*.sh --skip-license --prefix=/usr"
34
- # ninja from the package manager is to old for the LLVM build.
35
- - run : " wget https://github.com/ninja-build/ninja/releases/download/v1.12.1/ninja-linux.zip"
36
- - run : " unzip ninja-linux.zip -d /usr/bin/"
22
+ - if : contains(matrix.os, 'ubuntu')
23
+ run : " sudo apt update && sudo apt install -y ninja-build"
24
+ - if : contains(matrix.os, 'macos')
25
+ run : " brew install ninja"
37
26
# Build and package LLVM.
38
- - run : " ./build-llvm-libs.sh"
39
- - uses : actions/upload-artifact@v3
27
+ - run : " ./build-llvm-libs.sh llvm-static-libs-${{ matrix.os }}.tar.gz "
28
+ - uses : actions/upload-artifact@v4
40
29
with :
41
- name : llvm-static-libs
42
- path : llvm-static-libs.tar.gz
43
- - name : create release
44
- id : create-release
45
- uses : actions/create-release@v1
46
- env :
47
- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
30
+ name : llvm-static-libs-${{ matrix.os }}
31
+ path : llvm-static-libs-${{ matrix.os }}.tar.gz
32
+
33
+ create_release :
34
+ name : Create release
35
+ runs-on : ubuntu-latest
36
+ needs : [build_llvm]
37
+ permissions :
38
+ contents : write # for creating releases
39
+ steps :
40
+ - name : Download Artifacts
41
+ uses : actions/download-artifact@v4
48
42
with :
49
- tag_name : ${{ inputs.tag }}
50
- release_name : ${{ inputs.tag }}
51
- draft : false
52
- prerelease : true
53
- - name : upload linux artifact
54
- uses : actions/upload-release-asset@v1
55
- env :
56
- GITHUB_TOKEN : ${{ github.token }}
43
+ pattern : llvm-static-libs-*
44
+ merge-multiple : true
45
+ - name : Create Release
46
+ uses : softprops/action-gh-release@v2
57
47
with :
58
- upload_url : ${{ steps.create-release.outputs.upload_url }}
59
- asset_path : ./llvm-static-libs.tar.xz
60
- asset_name : llvm-static-linux-amd64.tar.xz
61
- asset_content_type : application/gzip
48
+ name : LLVM tooling libraries ${{ inputs.tag }}
49
+ tag_name : ${{ inputs.tag }}
50
+ files : llvm-static-libs-*
51
+ fail_on_unmatched_files : true
0 commit comments