Skip to content

VSH4 helper functions implementation because bindgen cant plus bump v… #103

VSH4 helper functions implementation because bindgen cant plus bump v…

VSH4 helper functions implementation because bindgen cant plus bump v… #103

Workflow file for this run

name: build
on:
push:
pull_request:
jobs:
build-test-lint-linux:
name: Linux - build, test and lint
runs-on: ubuntu-latest
env:
LD_LIBRARY_PATH: /usr/local/lib
steps:
- uses: actions/checkout@v5
with:
submodules: recursive
- name: Cache cargo
uses: actions/cache@v4
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
- name: Cache zimg
uses: actions/cache@v4
id: cache-zimg
with:
path: /usr/local/lib/libzimg*
key: ${{ runner.os }}-zimg-3.0.6
- name: Cache vapoursynth
uses: actions/cache@v4
id: cache-vapoursynth
with:
path: |
/usr/local/lib/libvapoursynth*
/usr/local/include/vapoursynth
key: ${{ runner.os }}-vapoursynth-${{ hashFiles('rustsynth-sys/vapoursynth/**') }}
- name: Install system dependencies
run: |
sudo apt-get update
sudo apt-get --yes install g++ make autoconf automake libtool pkg-config nasm git libclang-dev python3 python3-dev
pip install Cython
- name: Build zimg
if: steps.cache-zimg.outputs.cache-hit != 'true'
run: |
git clone --branch release-3.0.6 --depth 1 https://github.com/sekrit-twc/zimg.git
cd zimg
./autogen.sh
./configure
make
sudo make install
- name: Build vapoursynth
if: steps.cache-vapoursynth.outputs.cache-hit != 'true'
run: |
cd rustsynth-sys/vapoursynth
./autogen.sh
./configure
make
sudo make install
- name: Build
run: |
cargo build
- name: Test
run: |
cargo test --workspace --lib --bins --tests --benches
- name: Lint
run: |
cargo clippy
- name: Check format
run: |
cargo fmt -- --check
build-test-lint-macos:
name: macOS - build, test and lint
runs-on: macos-latest
steps:
- uses: actions/checkout@v5
with:
submodules: recursive
- uses: actions/cache@v4
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
- name: Install VapourSynth
run: |
brew install vapoursynth
- name: Build
run: |
cargo build
- name: Test
run: |
cargo test --workspace --lib --bins --tests --benches
- name: Lint
run: |
cargo clippy
- name: Check format
run: |
cargo fmt -- --check
# build-test-lint-windows:
# name: Windows - build, test and lint
# runs-on: windows-latest
# steps:
# - uses: actions/checkout@v2
# with:
# submodules: recursive
# - name: Install VapourSynth
# run: |
# https://github.com/vapoursynth/vapoursynth/releases/download/R72/VapourSynth64-Portable-R72.zip
# - name: Set up Rust
# uses: actions-rust-lang/setup-rust-toolchain@v1
# with:
# toolchain: stable
# override: true
# components: rustfmt, clippy
# - name: Build
# run: |
# cargo build
# - name: Test
# run: |
# cargo test --workspace --lib --bins --tests --benches
# - name: Lint
# run: |
# cargo clippy
# - name: Check format
# run: |
# cargo fmt -- --check