llama 0.14.2

Friendly LLVM bindings
Documentation
name: Rust

on:
  push:
    branches: [ master ]
  pull_request:
    branches: [ master ]

env:
  LLVM_VERSION: 14

jobs:
  linux:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2

    - name: Install deps
      run: wget https://apt.llvm.org/llvm.sh && chmod +x llvm.sh && sudo ./llvm.sh $LLVM_VERSION && sudo ln -sf /usr/bin/llvm-config-$LLVM_VERSION /usr/bin/llvm-config

    - name: Run tests
      run: cargo test --verbose
  macos:
    runs-on: macos-latest
    steps:
    - uses: actions/checkout@v2

    - name: Install deps
      run: brew update && brew install llvm@$LLVM_VERSION && brew upgrade llvm && ln -sf /usr/local/opt/llvm/bin/llvm-config /usr/local/bin/llvm-config

    - name: Run tests
      run: cargo test --verbose
  all_linux_nightly:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2

    - name: Install deps
      run: wget https://apt.llvm.org/llvm.sh && chmod +x llvm.sh && sudo ./llvm.sh $LLVM_VERSION && sudo ln -sf /usr/bin/llvm-config-$LLVM_VERSION /usr/bin/llvm-config

    - name: Nightly
      run: rustup toolchain install nightly

    - name: Run tests
      run: cargo +nightly test --verbose --all
  all_macos_nightly:
    runs-on: macos-latest
    steps:
    - uses: actions/checkout@v2

    - name: Install deps
      run: brew update && brew install llvm@$LLVM_VERSION && brew upgrade llvm && ln -sf /usr/local/opt/llvm/bin/llvm-config /usr/local/bin/llvm-config

    - name: Nightly
      run: rustup toolchain install nightly

    - name: Run tests
      run: cargo +nightly test --verbose --all
  clippy:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2

    - name: Install deps
      run: wget https://apt.llvm.org/llvm.sh && chmod +x llvm.sh && sudo ./llvm.sh $LLVM_VERSION && sudo ln -sf /usr/bin/llvm-config-$LLVM_VERSION /usr/bin/llvm-config

    - name: Nightly
      run: rustup toolchain install nightly --profile=default

    - name: Run tests
      run: cargo +nightly clippy --all
  doc:
    runs-on: ubuntu-latest
    env:
      RUSTFLAGS: -D warnings
      CARGO_INCREMENTAL: 0

    steps:
    - name: Checkout repository
      uses: actions/checkout@v2

    - name: Install dependencies
      run: wget https://apt.llvm.org/llvm.sh && chmod +x llvm.sh && sudo ./llvm.sh $LLVM_VERSION && sudo ln -sf /usr/bin/llvm-config-$LLVM_VERSION /usr/bin/llvm-config

    - name: Install Rust toolchain
      uses: actions-rs/toolchain@v1
      with:
        toolchain: nightly
        profile: minimal
        override: true
        components: rustfmt, rust-src

    - name: Build Documentation
      run: cargo doc --all

    - name: Deploy Docs
      uses: peaceiris/actions-gh-pages@v3
      with:
        github_token: ${{ secrets.GITHUB_TOKEN }}
        publish_branch: gh-pages
        publish_dir: ./target/doc
        force_orphan: true