
* p * a * p * a * delete transfered * b * bring back transferred * ?? * xx * conditional * ? * debug * a * 🤬🤬🤬🤬🤬🤬🤬 * a * a * comment
66 lines
2.4 KiB
YAML
66 lines
2.4 KiB
YAML
name: Setup Rust Environment
|
|
description: Sets up the Rust environment for the CI workflow
|
|
runs:
|
|
using: composite
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
submodules: true
|
|
fetch-depth: 0
|
|
- uses: Swatinem/rust-cache@v2
|
|
with: { shared-key: "${{ runner.os }}-shared-fuzzer-cache" }
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
profile: minimal
|
|
toolchain: stable
|
|
- name: Add stable clippy
|
|
shell: bash
|
|
run: rustup toolchain install stable --component clippy --allow-downgrade
|
|
- name: Add nightly clippy
|
|
shell: bash
|
|
run: rustup toolchain install nightly --component clippy --allow-downgrade
|
|
- name: Add no_std toolchain
|
|
shell: bash
|
|
run: rustup toolchain install nightly-x86_64-unknown-linux-gnu ; rustup component add rust-src --toolchain nightly-x86_64-unknown-linux-gnu
|
|
- name: Add wasm target
|
|
shell: bash
|
|
run: rustup target add wasm32-unknown-unknown
|
|
- name: Remove obsolete llvm (Linux)
|
|
if: runner.os == 'Linux'
|
|
shell: bash
|
|
run: sudo apt purge -y llvm* clang*
|
|
- name: Install LLVM and Clang
|
|
uses: KyleMayes/install-llvm-action@v2
|
|
with:
|
|
directory: ${{ runner.temp }}/llvm
|
|
version: 17
|
|
- name: Install deps
|
|
shell: bash
|
|
run: sudo apt update && sudo apt install -y nasm nlohmann-json3-dev ninja-build gcc-arm-linux-gnueabi g++-arm-linux-gnueabi gcc-aarch64-linux-gnu g++-aarch64-linux-gnu gcc-mipsel-linux-gnu g++-mipsel-linux-gnu gcc-powerpc-linux-gnu g++-powerpc-linux-gnu libc6-dev-i386-cross libc6-dev libc6-dev-i386 lib32gcc-11-dev lib32stdc++-11-dev libgtk-3-dev pax-utils libz3-dev
|
|
- name: pip install
|
|
shell: bash
|
|
run: python3 -m pip install msgpack jinja2 find_libpython
|
|
- name: enable mult-thread for `make`
|
|
shell: bash
|
|
run: export MAKEFLAGS="-j$(expr $(nproc) \+ 1)"
|
|
- name: install cargo-make
|
|
uses: baptiste0928/cargo-install@v1.3.0
|
|
with:
|
|
crate: cargo-make
|
|
- name: install wasm-pack
|
|
uses: baptiste0928/cargo-install@v1.3.0
|
|
with:
|
|
crate: wasm-pack
|
|
- name: install cxxbridge-cmd
|
|
uses: baptiste0928/cargo-install@v1.3.0
|
|
with:
|
|
crate: cxxbridge-cmd
|
|
- name: install chrome
|
|
uses: browser-actions/setup-chrome@v1
|
|
with:
|
|
chrome-version: stable
|
|
- name: Symlink Headers
|
|
if: runner.os == 'Linux'
|
|
shell: bash
|
|
run: sudo ln -s /usr/include/asm-generic /usr/include/asm
|