Skip to content

Install latest clang with brew #417

Install latest clang with brew

Install latest clang with brew #417

Workflow file for this run

name: Build-Linux
on:
push:
branches:
- master
pull_request:
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-22.04]
shared: [TRUE, FALSE]
compiler:
- { compiler: GNU, CC: gcc, CXX: g++ }
- { compiler: LLVM, CC: clang-16, CXX: clang++-16 }
steps:
- uses: actions/checkout@v3
with:
submodules: true
- name: Load llvm keys
if: matrix.compiler.compiler == 'LLVM'
run: wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add -
- name: Update clang
if: matrix.compiler.compiler == 'LLVM'
uses: myci-actions/add-deb-repo@10
with:
repo: deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-16 main
repo-name: llvm-toolchain-focal-16
update: false
install: clang-16
- name: Install system dependencies
run: |
sudo apt-get update && \
sudo apt-get install \
ninja-build \
qt6-base-dev \
qt6-declarative-dev \
qt6-multimedia-dev \
libqt6svg6-dev \
qt6-l10n-tools \
libopencv-dev \
libdlib-dev \
libexiv2-dev \
libgmock-dev \
libgl1-mesa-dev \
libglvnd-dev \
libwebp-dev
- name: Install magic enum
run: |
sudo wget https://raw.githubusercontent.com/Neargye/magic_enum/87190b8/include/magic_enum.hpp -O /usr/include/magic_enum.hpp
- name: Install CsLibGuarded
run: |
git clone https://github.com/copperspice/cs_libguarded.git
cd cs_libguarded
mkdir build
cd build
cmake ..
cmake --build . --target all
sudo cmake --build . --target install
- name: Setup ccache
uses: hendrikmuhs/ccache-action@v1.2
with:
key: ${{ github.job }}-${{ matrix.compiler.compiler }}
- name: Build
uses: ashutoshvarma/action-cmake-build@master
with:
build-dir: ${{ runner.workspace }}/build
build-type: Release
cc: ${{ matrix.compiler.CC }}
cxx: ${{ matrix.compiler.CXX }}
configure-options: -DBUILD_SHARED_LIBS=${{ matrix.shared }} -DLUPDATE=/usr/lib/qt6/bin/lupdate -DLRELEASE:FILEPATH=/usr/lib/qt6/bin/lrelease -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache