Skip to content

install nlohmann/json dependency #136

install nlohmann/json dependency

install nlohmann/json dependency #136

Workflow file for this run

name: Clang
on:
push:
branches:
- master
pull_request:
branches:
- master
workflow_dispatch:
jobs:
build-and-test:
runs-on: ubuntu-latest
strategy:
matrix:
version: [ 16, 17 ]
config: [ Debug, Release ]
steps:
- uses: actions/checkout@master
- name: Install Compiler
run: |
sudo apt-get update
wget https://apt.llvm.org/llvm.sh
chmod u+x llvm.sh
sudo ./llvm.sh ${{matrix.version}}
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-${{matrix.version}} 110
clang --version
- name: Setup system
run: |
sudo apt install -y libboost-all-dev
- name: Install Dependencies
shell: bash
working-directory: ${{runner.workspace}}
run: |
git clone https://github.com/Microsoft/vcpkg.git
cd vcpkg
./bootstrap-vcpkg.sh
./vcpkg install catch2
./vcpkg install nlohmann-json
./vcpkg install fmt
- name: Create Build Environment
run: cmake -E make_directory ${{runner.workspace}}/build
- name: Configure CMake
shell: bash
working-directory: ${{runner.workspace}}/build
run: |
export CC=`which clang`
export CXX=`which clang++`
cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.config}} -DCMAKE_TOOLCHAIN_FILE=${{runner.workspace}}/vcpkg/scripts/buildsystems/vcpkg.cmake
- name: Build
working-directory: ${{runner.workspace}}/build
shell: bash
run: cmake --build . --config ${{matrix.config}}
- name: Test
working-directory: ${{runner.workspace}}/build
shell: bash
run: ctest --build-config ${{matrix.config}} --rerun-failed --output-on-failure