dart-bindgen 0.1.8

A tool for generating Dart FFI bindings to C Header file.
Documentation
name: Build and upload binaries to release

on:
  repository_dispatch:
    types: [tag-created]

jobs:
  release:
    name: Build and Release
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        include:
          - os: ubuntu-latest
            artifact_name: dart-bindgen
            asset_name: dart-bindgen-linux-amd64
          - os: macos-latest
            artifact_name: dart-bindgen
            asset_name: dart-bindgen-macos-amd64
          - os: windows-latest
            artifact_name: dart-bindgen.exe
            asset_name: dart-bindgen-windows-amd64.exe
    steps:
      - name: Cache LLVM and Clang
        id: cache-llvm
        uses: actions/cache@v2
        with:
          path: ${{ runner.temp }}/llvm/10.0
          key: ${{ matrix.os }}-llvm-10.0
      - name: Install LLVM and Clang
        uses: KyleMayes/install-llvm-action@v1
        with:
          version: '10.0'
          directory: ${{ runner.temp }}/llvm/10.0
          cached: ${{ steps.cache-llvm.outputs.cache-hit }}
      - name: Checkout code
        uses: actions/checkout@v2
      - name: Build CLI (Dynamic)
        uses: actions-rs/cargo@v1
        env:
          LIBCLANG_PATH: ${{ runner.temp }}/llvm/10.0/lib
          LLVM_CONFIG_PATH: ${{ runner.temp }}/llvm/10.0/bin/llvm-config
        with:
          command: build
          args: --release --features cli
      - name: Upload binary to release
        uses: svenstaro/upload-release-action@v1-release
        with:
          repo_token: ${{ secrets.GITHUB_TOKEN }}
          file: target/release/${{ matrix.artifact_name }}
          asset_name: ${{ matrix.asset_name }}
          tag: ${{ github.event.client_payload.new_version }}