# GitHub Actions Workflow to build Simulator for PineTime Smart Watch LVGL Interface # Name of this Workflow name: Build InfiniSim LVGL Simulator # When to run this Workflow... on: # Run on all branches push: branches: [] # Also run this Workflow when a Pull Request is created or updated in the "main" and "develop" Branch pull_request: branches: [ main, develop ] # Steps to run for the Workflow jobs: build: # Run these steps on Ubuntu runs-on: ubuntu-latest steps: ######################################################################################### # Download and Install Dependencies - name: Install cmake uses: lukka/get-cmake@v3.18.3 - name: Install SDL2 development package run: | sudo apt-get update sudo apt-get -y install libsdl2-dev - name: Install lv_font_conv run: npm i -g lv_font_conv@1.5.2 - name: Install lv_img_conv run: | npm i -g ts-node@10.9.1 -g npm i -g @swc/core -g npm i -g lv_img_conv@0.3.0 -g ######################################################################################### # Checkout - name: Checkout source files uses: actions/checkout@v2 with: submodules: recursive ######################################################################################### # CMake - name: CMake run: | cmake -G Ninja -S . -B build_lv_sim ######################################################################################### # Build and Upload simulator # For Debugging Builds: Remove "make" option "-j" for clearer output. Add "--trace" to see details. # For Faster Builds: Add "make" option "-j" - name: Build simulator executable run: | cmake --build build_lv_sim - name: Upload simulator executable uses: actions/upload-artifact@v3 with: name: infinisim path: build_lv_sim/infinisim - name: Upload littlefs-do executable uses: actions/upload-artifact@v3 with: name: littlefs-do path: build_lv_sim/littlefs-do