Skip to content

feat: Adding the installation of the LLVM-19 libc++ to the Zork++ cfg #101

feat: Adding the installation of the LLVM-19 libc++ to the Zork++ cfg

feat: Adding the installation of the LLVM-19 libc++ to the Zork++ cfg #101

Workflow file for this run

name: Tests for the project
on:
push:
branches: '*'
pull_request:
branches: '*'
jobs:
tests:
name: Running the tests for ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- { os: ubuntu-latest, clang_version: 19 }
# - { os: macos-latest }
# - { os: windows-latest }
steps:
- uses: actions/checkout@v3
- name: Clone Zork++
uses: GuillaumeFalourd/[email protected]
with:
owner: 'ZeroDayCode'
repository: 'Zork'
branch: 'feature/GH-127-clang-upgrades'
- name: Installing LLVM ${{ matrix.clang_version }}
run: |
# Exit on error
set -e
# Download and execute the LLVM installation script for the specified Clang version
echo "-----> Downloading and executing the LLVM installation script for Clang ${{ matrix.clang_version }}"
wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh
sudo ./llvm.sh ${{ matrix.clang_version }}
echo "-----> Installing libc++"
sudo apt-get install -y libc++-${{ matrix.clang_version }}-dev libc++abi-${{ matrix.clang_version }}-dev libunwind-${{ matrix.clang_version }} libunwind-${{ matrix.clang_version }}-dev libc6 libzstd1
# Update the symbolic link to point to the newly installed Clang version
echo "-----> Updating the symbolic link to point to Clang ${{ matrix.clang_version }}"
sudo rm -f /usr/bin/clang++
sudo ln -s /usr/bin/clang++-${{ matrix.clang_version }} /usr/bin/clang++
# Find the system libc++ installations
find /usr -type f \( -name 'std.cppm' -o -name 'std.compat.cppm' \) -exec echo "Found: {}" \;
- name: Generate a Zork++ release build
run: |
cd ./Zork/zork++
cargo build --release
cd ../..
mv ./Zork/zork++/target/release/zork ./Zork/zork++/target/release/zork++
cp ./Zork/zork++/target/release/zork++ .
- name: Running the tests for ${{ matrix.os }} with Zork++
run: ./zork++ --match-files gh_linux -vv -c test