blob: e6c0dc4a4a4d36b924610325651c93a477f0fd29 [file] [log] [blame] [edit]
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@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "3.x"
- name: Set up latest CMake
if: ${{ runner.os != 'Linux' || inputs.oldest-cmake != 'true' }}
uses: jwlawson/actions-setup-cmake@3a6cbe35ba64df7ca70c51365c4aff65db9a9037 # v2.1.1
with:
cmake-version: "latest"
- name: Set up CMake 3.22
if: ${{ runner.os == 'Linux' && inputs.oldest-cmake == 'true' }}
uses: jwlawson/actions-setup-cmake@3a6cbe35ba64df7ca70c51365c4aff65db9a9037 # v2.1.1
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