@@ -5,15 +5,14 @@ permissions:
55
66on :
77 pull_request :
8- paths :
9- - .github/workflows/premerge.yaml
108 push :
119 branches :
1210 - ' main'
11+ - ' release/**'
1312
1413jobs :
1514 premerge-checks-linux :
16- if : github.repository_owner == 'llvm'
15+ if : false && github.repository_owner == 'llvm'
1716 runs-on : llvm-premerge-linux-runners
1817 concurrency :
1918 group : ${{ github.workflow }}-linux-${{ github.event.pull_request.number || github.sha }}
7271 ./.ci/monolithic-linux.sh "$(echo ${linux_projects} | tr ' ' ';')" "$(echo ${linux_check_targets})" "$(echo ${linux_runtimes} | tr ' ' ';')" "$(echo ${linux_runtime_check_targets})"
7372
7473 premerge-checks-windows :
75- if : github.repository_owner == 'llvm'
74+ if : false && github.repository_owner == 'llvm'
7675 runs-on : llvm-premerge-windows-runners
7776 concurrency :
7877 group : ${{ github.workflow }}-windows-${{ github.event.pull_request.number || github.sha }}
@@ -132,3 +131,73 @@ jobs:
132131 call C:\\BuildTools\\Common7\\Tools\\VsDevCmd.bat -arch=amd64 -host_arch=amd64
133132 bash .ci/monolithic-windows.sh "${{ steps.vars.outputs.windows-projects }}" "${{ steps.vars.outputs.windows-check-targets }}"
134133
134+ permerge-check-macos :
135+ runs-on : macos-14
136+ concurrency :
137+ group : ${{ github.workflow }}-macos-${{ github.event.pull_request.number || github.sha }}
138+ cancel-in-progress : true
139+ if : >-
140+ github.repository_owner == 'llvm' &&
141+ (startswith(github.ref_name, 'release/') ||
142+ startswith(github.base_ref, 'release/'))
143+ steps :
144+ - name : Checkout LLVM
145+ uses : actions/checkout@v4
146+ with :
147+ fetch-depth : 2
148+ - name : Setup ccache
149+ uses :
hendrikmuhs/[email protected] 150+ with :
151+ max-size : " 2000M"
152+ - name : Install Ninja
153+ uses : llvm/actions/install-ninja@main
154+ - name : Build and Test
155+ run : |
156+ modified_files=$(git diff --name-only HEAD~1...HEAD)
157+ modified_dirs=$(echo "$modified_files" | cut -d'/' -f1 | sort -u)
158+
159+ echo $modified_files
160+ echo $modified_dirs
161+
162+ . ./.ci/compute-projects.sh
163+
164+ all_projects="clang clang-tools-extra lld lldb llvm mlir"
165+ modified_projects="$(keep-modified-projects ${all_projects})"
166+
167+ # We have to disable the runtimes builds due to https://github.com/llvm/llvm-project/issues/90568
168+ # and the lldb tests depend on libcxx, so we need to skip them.
169+ mac_check_targets=$(check-targets ${modified_projects} | sort | uniq | tr '\n' ' ' | sed -e 's/check-lldb //g')
170+ mac_projects=$(add-dependencies ${modified_projects} | sort | uniq | tr '\n' ' ')
171+
172+ mac_runtimes_to_test=$(compute-runtimes-to-test ${modified_projects})
173+ mac_runtime_check_targets=$(check-targets ${mac_runtimes_to_test} | sort | uniq | tr '\n' ' ')
174+ mac_runtimes=$(echo ${mac_runtimes_to_test} | tr ' ' '\n' | sort | uniq | tr '\n' ' ')
175+
176+ if [[ "${mac_projects}" == "" ]]; then
177+ echo "No projects to build"
178+ exit 0
179+ fi
180+
181+ echo "Projects to test: ${modified_projects}"
182+ echo "Runtimes to test: ${mac_runtimes_to_test}"
183+ echo "Building projects: ${mac_projects}"
184+ echo "Running project checks targets: ${mac_check_targets}"
185+ echo "Building runtimes: ${mac_runtimes}"
186+ echo "Running runtimes checks targets: ${mac_runtime_check_targets}"
187+
188+ # -DLLVM_DISABLE_ASSEMBLY_FILES=ON is for
189+ # https://github.com/llvm/llvm-project/issues/81967
190+ # Disable sharding in lit so that the LIT_XFAIL environment var works.
191+ cmake -G Ninja \
192+ -B build \
193+ -S llvm \
194+ -DLLVM_ENABLE_PROJECTS="$(echo ${mac_projects} | tr ' ' ';')" \
195+ -DLLVM_DISABLE_ASSEMBLY_FILES=ON \
196+ -DCMAKE_BUILD_TYPE=Release \
197+ -DLLDB_INCLUDE_TESTS=OFF \
198+ -DLLVM_ENABLE_ASSERTIONS=ON \
199+ -DCMAKE_C_COMPILER_LAUNCHER=ccache \
200+ -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
201+
202+ # The libcxx tests fail, so we are skipping the runtime targets.
203+ ninja -C build $mac_check_targets
0 commit comments