|
20 | 20 | strategy: |
21 | 21 | fail-fast: false |
22 | 22 | matrix: |
23 | | - clang-version: [ 20, 19, 18, 17, 16, 15, 14, 13, 12.0.1, 12, 11, 10, 9, 8] |
| 23 | + clang-version: [ 21, 20, 19, 18, 17, 16, 15, 14, 13, 12.0.1, 12, 11, 10, 9] |
24 | 24 | os: [ linux, macosx, windows ] |
25 | 25 | include: |
| 26 | + - clang-version: 21 |
| 27 | + release: llvm-project-21.1.0.src |
26 | 28 | - clang-version: 20 |
27 | 29 | release: llvm-project-20.1.0.src |
28 | 30 | - clang-version: 19 |
|
51 | 53 | - clang-version: 9 |
52 | 54 | release: llvm-project-9.0.1 |
53 | 55 | extra-cmake-args: '-DLLVM_ENABLE_Z3_SOLVER=OFF' |
54 | | - - clang-version: 8 |
55 | | - release: llvm-project-8.0.1 |
56 | | - extra-cmake-args: '-DCLANG_ANALYZER_ENABLE_Z3_SOLVER=OFF' |
57 | 56 | - os: linux |
58 | 57 | runner: ubuntu-22.04 |
59 | 58 | os-cmake-args: '-DLLVM_BUILD_STATIC=ON -DCMAKE_CXX_FLAGS="-s -flto" ${POSIX_CMAKE_ARGS} ${LINUX_CMAKE_ARGS}' |
@@ -91,42 +90,17 @@ jobs: |
91 | 90 | # The commit hash of this repository into the clang binaries |
92 | 91 | shell: bash |
93 | 92 | run: curl -L https://github.com/${{ github.repository }}/archive/${{ github.ref }}.tar.gz | tar xvz --strip 1 |
94 | | - - name: Get llvm-project |
95 | | - if: ${{ matrix.clang-version == 8 }} |
96 | | - shell: bash |
97 | | - run: | |
98 | | - version=${RELEASE##llvm-project-} |
99 | | - curl -LO https://github.com/llvm/llvm-project/releases/download/llvmorg-${version}/llvm-${version}.src.tar.xz |
100 | | - curl -LO https://github.com/llvm/llvm-project/releases/download/llvmorg-${version}/cfe-${version}.src.tar.xz |
101 | | - curl -LO https://github.com/llvm/llvm-project/releases/download/llvmorg-${version}/clang-tools-extra-${version}.src.tar.xz |
102 | 93 | - name: Get llvm-project |
103 | 94 | if: ${{ matrix.clang-version >= 9 || matrix.clang-version == '12.0.1' }} |
104 | 95 | shell: bash |
105 | 96 | run: | |
106 | 97 | version=${RELEASE##llvm-project-}; version=${version%.src} |
107 | 98 | curl -LO https://github.com/llvm/llvm-project/releases/download/llvmorg-${version}/${{ matrix.release }}.tar.xz |
108 | | -
|
109 | 99 | - name: Unpack llvm-project |
110 | | - if: ${{ matrix.clang-version < 9 }} |
111 | 100 | shell: bash |
112 | 101 | run: | |
113 | | - version=${RELEASE##llvm-project-} |
114 | | - tar xf llvm-${version}.src.tar.xz |
115 | | - tar xf cfe-${version}.src.tar.xz ${{ matrix.extra-tar-args-cfe }} |
116 | | - tar xf clang-tools-extra-${version}.src.tar.xz |
117 | | - mkdir ${{ matrix.release }} |
118 | | - mv llvm-${version}.src ${{ matrix.release }}/llvm |
119 | | - mv cfe-${version}.src ${{ matrix.release }}/clang |
120 | | - mv clang-tools-extra-${version}.src ${{ matrix.release }}/clang-tools-extra |
121 | | - - name: Unpack llvm-project |
122 | | - if: ${{ matrix.clang-version >= 9 || matrix.clang-version == '12.0.1' }} |
123 | | - shell: bash |
124 | | - run: | |
125 | | - tar xf ${{ matrix.release }}.tar.xz ${{ matrix.extra-tar-args }} |
126 | | - - name: Patch clang-8 includes |
127 | | - if: ${{ matrix.clang-version == 8 }} |
128 | | - shell: bash |
129 | | - run: patch ${{ matrix.release }}/llvm/include/llvm/Demangle/MicrosoftDemangleNodes.h include-cstdint-string-prior-to-using-uint8_t.patch |
| 102 | + # ignore failure on v21 on windows |
| 103 | + tar xf ${{ matrix.release }}.tar.xz ${{ matrix.extra-tar-args }} || true |
130 | 104 | - name: Patch trivially-copyable clang 9/10 |
131 | 105 | if: ${{ ( matrix.clang-version == 9 || matrix.clang-version == 10 ) && matrix.os == 'windows' }} |
132 | 106 | shell: bash |
|
0 commit comments