name: Build LVGL MicroPython for MacOS on: push: branches: - main pull_request: branches: - main workflow_dispatch: # allow manual workflow starts jobs: build: runs-on: macos-14 steps: - name: Checkout repository with submodules uses: actions/checkout@v4 with: submodules: recursive - name: Install dependencies via Homebrew run: | xcode-select --install || true # already installed on github brew install pkg-config libffi ninja make SDL2 - name: Show version numbers run: | xcodebuild -version clang --version - name: Build LVGL MicroPython for unix dev run: | ./scripts/build_mpos.sh macOS dev - name: Upload built binary as artifact uses: actions/upload-artifact@v4 with: name: lvgl_micropy_macOS path: lvgl_micropython/build/lvgl_micropy_macOS compression-level: 0 # don't zip it retention-days: 7 - name: Build LVGL MicroPython esp32 prod fri3d-2024 run: | ./scripts/build_mpos.sh esp32 prod fri3d-2024 - name: Upload built binary as artifact uses: actions/upload-artifact@v4 with: name: MicroPythonOS_fri3d-2024_prod path: lvgl_micropython/build/lvgl_micropy_ESP32_GENERIC_S3-SPIRAM_OCT-16.bin compression-level: 0 # don't zip it retention-days: 7 - name: Upload built binary as artifact uses: actions/upload-artifact@v4 with: name: MicroPythonOS_fri3d-2024_prod.ota path: lvgl_micropython/lib/micropython/ports/esp32/build-ESP32_GENERIC_S3-SPIRAM_OCT/micropython.bin compression-level: 0 # don't zip it retention-days: 7 - name: Cleanup run: | rm lvgl_micropython/build/lvgl_micropy_ESP32_GENERIC_S3-SPIRAM_OCT-16.bin rm lvgl_micropython/lib/micropython/ports/esp32/build-ESP32_GENERIC_S3-SPIRAM_OCT/micropython.bin - name: Build LVGL MicroPython esp32 dev fri3d-2024 run: | ./scripts/build_mpos.sh esp32 dev fri3d-2024 - name: Upload built binary as artifact uses: actions/upload-artifact@v4 with: name: MicroPythonOS_fri3d-2024_dev path: lvgl_micropython/build/lvgl_micropy_ESP32_GENERIC_S3-SPIRAM_OCT-16.bin compression-level: 0 # don't zip it retention-days: 7 - name: Cleanup run: | rm lvgl_micropython/build/lvgl_micropy_ESP32_GENERIC_S3-SPIRAM_OCT-16.bin rm lvgl_micropython/lib/micropython/ports/esp32/build-ESP32_GENERIC_S3-SPIRAM_OCT/micropython.bin - name: Build LVGL MicroPython esp32 prod waveshare-esp32-s3-touch-lcd-2 run: | ./scripts/build_mpos.sh esp32 prod waveshare-esp32-s3-touch-lcd-2 - name: Upload built binary as artifact uses: actions/upload-artifact@v4 with: name: MicroPythonOS_waveshare-esp32-s3-touch-lcd-2_prod path: lvgl_micropython/build/lvgl_micropy_ESP32_GENERIC_S3-SPIRAM_OCT-16.bin compression-level: 0 # don't zip it retention-days: 7 - name: Upload built binary as artifact uses: actions/upload-artifact@v4 with: name: MicroPythonOS_waveshare-esp32-s3-touch-lcd-2_prod.ota path: lvgl_micropython/lib/micropython/ports/esp32/build-ESP32_GENERIC_S3-SPIRAM_OCT/micropython.bin compression-level: 0 # don't zip it retention-days: 7 - name: Cleanup run: | rm lvgl_micropython/build/lvgl_micropy_ESP32_GENERIC_S3-SPIRAM_OCT-16.bin rm lvgl_micropython/lib/micropython/ports/esp32/build-ESP32_GENERIC_S3-SPIRAM_OCT/micropython.bin - name: Build LVGL MicroPython esp32 dev waveshare-esp32-s3-touch-lcd-2 run: | ./scripts/build_mpos.sh esp32 dev waveshare-esp32-s3-touch-lcd-2 - name: Upload built binary as artifact uses: actions/upload-artifact@v4 with: name: MicroPythonOS_waveshare-esp32-s3-touch-lcd-2_dev path: lvgl_micropython/build/lvgl_micropy_ESP32_GENERIC_S3-SPIRAM_OCT-16.bin compression-level: 0 # don't zip it retention-days: 7