blob: 0bf8cd6cdee9ed7ce06d43b2f4d4d5a82a995100 [file]
name: "Common setup for all OSes"
description: "Installs common dependencies"
inputs:
codec-aom:
description: "Can take the values: OFF, LOCAL, SYSTEM"
default: "OFF"
codec-dav1d:
description: "Can take the values: OFF, LOCAL, SYSTEM"
default: "OFF"
codec-rav1e:
description: "Can take the values: OFF, LOCAL, SYSTEM"
default: "OFF"
oldest-cmake:
description: "Can take the values: true, false. Only useful on Linux to force using the minimum required CMake"
default: "false"
runs:
using: "composite"
steps:
- name: Set up Python
uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0
with:
python-version: "3.x"
- name: Set up latest CMake
if: ${{ runner.os != 'Linux' || inputs.oldest-cmake != 'true' }}
uses: jwlawson/actions-setup-cmake@802fa1a2c4e212495c05bf94dba2704a92a472be # v2.0.2
with:
cmake-version: "latest"
- name: Set up CMake 3.22
if: ${{ runner.os == 'Linux' && inputs.oldest-cmake == 'true' }}
uses: jwlawson/actions-setup-cmake@802fa1a2c4e212495c05bf94dba2704a92a472be # v2.0.2
with:
# Use the minimum required version of cmake.
cmake-version: "3.22.x"
- name: Print CMake version
run: cmake --version
shell: bash
- name: Set up ninja
uses: seanmiddleditch/gha-setup-ninja@3b1f8f94a2f8254bd26914c4ab9474d4f0015f67 # v6
- name: Set up nasm
if: ${{ inputs.codec-aom == 'LOCAL' || inputs.codec-dav1d == 'LOCAL' }}
uses: ilammy/setup-nasm@72793074d3c8cdda771dba85f6deafe00623038b # v1.5.2
- name: Set up rust
if: ${{ inputs.codec-rav1e == 'LOCAL' }}
uses: actions-rs/toolchain@16499b5e05bf2e26879000db0c1d13f7e13fa3af # v1.0.7
with:
toolchain: stable