diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 9cdd07c3db493d6f07bfbb101ed738f591e4a2b9..ef9be0ad3297ba79546362ffeda79e5c1ef3a851 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -80,3 +80,42 @@ jobs: node-version: ${{ matrix.node-version }} - name: Build and lint Web code run: cd frontends/web && npm install && npm run build && npm run lint + build-sdl: + name: Build SDL + timeout-minutes: 10 + strategy: + matrix: + rust-version: [ + "1.56.1", + "1.60.0", + "1.61.0", + "1.62.0", + "1.63.0", + "1.64.0", + "1.65.0", + "1.66.0", + "1.67.0", + "1.68.0", + "latest" + ] + runs-on: ubuntu-latest + container: rust:${{ matrix.rust-version }} + steps: + - name: Checkout code from repository + uses: actions/checkout@v3 + - name: Install Rust components + run: | + rustup component add rustfmt + rustup component add clippy + - name: Print Rust information + run: rustc --version + - name: Verify Rust code format + run: cd frontends/sdl && cargo fmt --all -- --check + - name: Verify Rust code linting + run: cd frontends/sdl && cargo clippy -- -D warnings -A unknown-lints + - name: Install SDL dependencies + run: cd frontends/sdl && cargo install cargo-vcpkg && cargo vcpkg build + - name: Build development version + run: cd frontends/sdl && cargo build + - name: Build release version + run: cd frontends/sdl && cargo build --release