add ATK-ESP32S3-LVGL support & fix build issues #200
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI Build Matrix | |
| on: | |
| push: | |
| branches: [main] | |
| paths: | |
| - 'claw/**' | |
| - 'osal/**' | |
| - 'include/**' | |
| - 'drivers/**' | |
| - 'platform/**' | |
| - 'scripts/**' | |
| - 'Makefile' | |
| - 'meson.build' | |
| - 'meson_options.txt' | |
| - '.github/workflows/ci-build-matrix.yml' | |
| pull_request: | |
| paths: | |
| - 'claw/**' | |
| - 'osal/**' | |
| - 'include/**' | |
| - 'drivers/**' | |
| - 'platform/**' | |
| - 'scripts/**' | |
| - 'Makefile' | |
| - 'meson.build' | |
| - 'meson_options.txt' | |
| - '.github/workflows/ci-build-matrix.yml' | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: ci-build-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| # Tier 1: default builds for all platforms | |
| build: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - target: linux | |
| make_target: build-linux | |
| esp_targets: "" | |
| - target: vexpress-a9-qemu | |
| make_target: vexpress-a9-qemu | |
| esp_targets: "" | |
| - target: zynq-a9-qemu | |
| make_target: build-zynq-a9-qemu | |
| esp_targets: "" | |
| - target: esp32c3-qemu | |
| make_target: build-esp32c3-qemu | |
| esp_targets: esp32c3 | |
| - target: esp32c3-devkit | |
| make_target: build-esp32c3-devkit | |
| esp_targets: esp32c3 | |
| - target: esp32c3-xiaozhi-xmini | |
| make_target: build-esp32c3-xiaozhi-xmini | |
| esp_targets: esp32c3 | |
| - target: esp32s3-qemu | |
| make_target: build-esp32s3-qemu | |
| esp_targets: esp32s3 | |
| - target: esp32s3-default | |
| make_target: build-esp32s3 | |
| esp_targets: esp32s3 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - name: Install system dependencies | |
| run: scripts/ci/install-system-deps.sh build | |
| - name: Cache ESP-IDF source | |
| if: ${{ matrix.esp_targets != '' }} | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/esp/esp-idf | |
| key: esp-idf-src-v5.4-${{ runner.os }} | |
| - name: Cache ESP-IDF tools | |
| if: ${{ matrix.esp_targets != '' }} | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.espressif | |
| key: esp-idf-tools-v5.4-${{ runner.os }} | |
| - name: Ensure ESP-IDF environment | |
| if: ${{ matrix.esp_targets != '' }} | |
| run: scripts/ci/setup-esp-idf.sh "${{ matrix.esp_targets }}" none | |
| - name: Build ESP-IDF target | |
| if: ${{ matrix.esp_targets != '' }} | |
| run: | | |
| source ~/esp/esp-idf/export.sh | |
| make ${{ matrix.make_target }} | |
| - name: Build non-ESP target | |
| if: ${{ matrix.esp_targets == '' }} | |
| run: make ${{ matrix.make_target }} | |
| # Tier 4: Linux Meson option matrix (fast, no cross-compiler) | |
| meson-option-matrix: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - name: Install system dependencies | |
| run: scripts/ci/install-system-deps.sh build | |
| - name: Run Meson option matrix | |
| run: scripts/test-meson-matrix.sh | |
| # Tier 6: unit tests | |
| unit-tests: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - name: Install system dependencies | |
| run: scripts/ci/install-system-deps.sh build | |
| - name: Run unit tests | |
| run: make test-unit-linux |