Skip to content

Commit

Permalink
LLVM-17 - macOS 13 - XCode 15 - Update vcpkg (#1032)
Browse files Browse the repository at this point in the history
* LLVM-17

* Skip building tools with LLVM 17

* Update to macOS 13 and XCode 15.0

* Remove LLVM pasta

* Use newest commit on cxx-common branch vcpkg fork
  • Loading branch information
ekilmer authored Sep 27, 2023
1 parent 7265eb8 commit 47b4236
Show file tree
Hide file tree
Showing 29 changed files with 157 additions and 5,853 deletions.
20 changes: 12 additions & 8 deletions .github/workflows/vcpkg_ci_amd64.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,10 @@ jobs:
image:
# 'name' is Docker image name whereas 'os' is more generic
- { os: 'ubuntu', name: 'ubuntu-v2', tag: '22.04' }
llvm: [ 'llvm-16[pasta]', 'llvm-16' ]
llvm: [
'llvm-16',
'llvm-17'
]
target_arch: [ 'x64', 'arm64' ]

container:
Expand Down Expand Up @@ -86,6 +89,7 @@ jobs:
{ read -r vcpkg_repo_url && read -r vcpkg_commit; } <./vcpkg_info.txt || exit 1
git clone "${vcpkg_repo_url}"
git -C vcpkg checkout "${vcpkg_commit}"
export VCPKG_DISABLE_METRICS=1
./vcpkg/bootstrap-vcpkg.sh
echo "VCPKG_ROOT=$(pwd)/vcpkg" >> $GITHUB_ENV
Expand Down Expand Up @@ -180,7 +184,7 @@ jobs:
- name: 'Rellic build'
shell: 'bash'
working-directory: rellic
if: matrix.target_arch == 'x64'
if: matrix.target_arch == 'x64' && startswith(matrix.llvm, 'llvm-16')
run: |
# Does not compile with gcc
export CC="$(which clang)"
Expand All @@ -197,13 +201,13 @@ jobs:
- name: 'Rellic test'
shell: 'bash'
working-directory: rellic
if: matrix.target_arch == 'x64'
if: matrix.target_arch == 'x64' && startswith(matrix.llvm, 'llvm-16')
run: |
cmake --build build --target test
- name: 'Remill dependencies'
shell: 'bash'
if: matrix.target_arch == 'x64'
if: matrix.target_arch == 'x64' && startswith(matrix.llvm, 'llvm-16')
working-directory: remill
run: |
python3 -m pip install poetry
Expand All @@ -213,7 +217,7 @@ jobs:
- name: 'Remill build'
shell: 'bash'
if: matrix.target_arch == 'x64'
if: matrix.target_arch == 'x64' && startswith(matrix.llvm, 'llvm-16')
working-directory: remill
run: |
cmake -G Ninja \
Expand All @@ -229,15 +233,15 @@ jobs:
- name: 'Remill test'
shell: 'bash'
working-directory: remill/build
if: matrix.target_arch == 'x64'
if: matrix.target_arch == 'x64' && startswith(matrix.llvm, 'llvm-16')
run: |
# Some tests fail on ubuntu 22.04
env CTEST_OUTPUT_ON_FAILURE=1 ctest . || true
- name: 'Anvill build'
shell: 'bash'
working-directory: anvill
if: matrix.target_arch == 'x64'
if: matrix.target_arch == 'x64' && startswith(matrix.llvm, 'llvm-16')
run: |
# TODO: Does not support compilation with gcc
export CC="$(which clang)"
Expand All @@ -260,7 +264,7 @@ jobs:
- name: 'Anvill test'
shell: 'bash'
working-directory: anvill
if: matrix.target_arch == 'x64'
if: matrix.target_arch == 'x64' && startswith(matrix.llvm, 'llvm-16')
run: |
cmake --build build --target test
Expand Down
31 changes: 13 additions & 18 deletions .github/workflows/vcpkg_ci_mac.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,11 @@ jobs:
fail-fast: false
matrix:
os:
- { runner: 'macos-12', xcode: '14.2' }
llvm: [ 'llvm-16[pasta]', 'llvm-16' ]
- { runner: 'macos-13', xcode: '15.0' }
llvm: [
'llvm-16',
'llvm-17'
]
target_arch: [ 'x64', 'arm64' ]

runs-on: ${{ matrix.os.runner }}
Expand Down Expand Up @@ -78,21 +81,13 @@ jobs:
echo "Selecting XCode Version ${{ matrix.os.xcode }}"
sudo xcode-select -s /Applications/Xcode_${{ matrix.os.xcode }}.app/Contents/Developer
# Crosscompiling LLVM 16 requires a newer clang than available in XCode 14.2
- name: Install latest LLVM
if: contains(matrix.llvm, 'llvm-16') && matrix.target_arch == 'arm64'
run: |
brew install llvm
echo "/usr/local/opt/llvm/bin" >> "$GITHUB_PATH"
echo "CC=/usr/local/opt/llvm/bin/clang" >> "$GITHUB_ENV"
echo "CXX=/usr/local/opt/llvm/bin/clang++" >> "$GITHUB_ENV"
- name: Initialize vcpkg
shell: bash
run: |
{ read -r vcpkg_repo_url && read -r vcpkg_commit; } <./vcpkg_info.txt || exit 1
git clone "${vcpkg_repo_url}"
git -C vcpkg checkout "${vcpkg_commit}"
export VCPKG_DISABLE_METRICS=1
./vcpkg/bootstrap-vcpkg.sh
echo "VCPKG_ROOT=$(pwd)/vcpkg" >> $GITHUB_ENV
Expand Down Expand Up @@ -177,7 +172,7 @@ jobs:
- name: 'Rellic build'
shell: 'bash'
working-directory: rellic
if: matrix.target_arch == 'x64'
if: matrix.target_arch == 'x64' && startswith(matrix.llvm, 'llvm-16')
run: |
cmake -G Ninja \
-DCMAKE_VERBOSE_MAKEFILE=ON \
Expand All @@ -192,14 +187,14 @@ jobs:
- name: 'Rellic test'
shell: 'bash'
working-directory: rellic
if: matrix.target_arch == 'x64'
if: matrix.target_arch == 'x64' && startswith(matrix.llvm, 'llvm-16')
run: |
cmake --build build --target test
- name: 'Remill dependencies'
shell: 'bash'
working-directory: remill
if: matrix.target_arch == 'x64'
if: matrix.target_arch == 'x64' && startswith(matrix.llvm, 'llvm-16')
run: |
python3 -m pip install poetry
python3 -m pip install --user ./scripts/diff_tester_export_insns
Expand All @@ -209,7 +204,7 @@ jobs:
- name: 'Remill build'
shell: 'bash'
working-directory: remill
if: matrix.target_arch == 'x64'
if: matrix.target_arch == 'x64' && startswith(matrix.llvm, 'llvm-16')
run: |
cmake -G Ninja \
-DCMAKE_VERBOSE_MAKEFILE=ON \
Expand All @@ -225,15 +220,15 @@ jobs:
- name: 'Remill test'
shell: 'bash'
working-directory: remill/build
if: matrix.target_arch == 'x64'
if: matrix.target_arch == 'x64' && startswith(matrix.llvm, 'llvm-16')
run: |
# Only run test on x64
env CTEST_OUTPUT_ON_FAILURE=1 ctest .
- name: 'Anvill build'
shell: 'bash'
working-directory: anvill
if: matrix.target_arch == 'x64'
if: matrix.target_arch == 'x64' && startswith(matrix.llvm, 'llvm-16')
run: |
cmake -G Ninja \
-DCMAKE_VERBOSE_MAKEFILE=ON \
Expand All @@ -253,7 +248,7 @@ jobs:
- name: 'Anvill test'
shell: 'bash'
working-directory: anvill
if: matrix.target_arch == 'x64'
if: matrix.target_arch == 'x64' && startswith(matrix.llvm, 'llvm-16')
run: |
cmake --build build --target test
Expand Down
17 changes: 0 additions & 17 deletions ports/llvm-15/0002-Fix-DR-1734.patch

This file was deleted.

16 changes: 0 additions & 16 deletions ports/llvm-15/0003-Fix-tools-path.patch

This file was deleted.

44 changes: 0 additions & 44 deletions ports/llvm-15/0004-Fix-compiler-rt-install-path.patch

This file was deleted.

Loading

0 comments on commit 47b4236

Please sign in to comment.