Skip to content

Commit

Permalink
CI: add lv_sim workflow and upload 'infinisim' executable
Browse files Browse the repository at this point in the history
use InfiniSim repo to build simulator in CI
  • Loading branch information
NeroBurner authored and JF002 committed Mar 8, 2022
1 parent 187d99c commit 4c92ed4
Show file tree
Hide file tree
Showing 2 changed files with 78 additions and 0 deletions.
74 changes: 74 additions & 0 deletions .github/workflows/lv_sim.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
# GitHub Actions Workflow to build Simulator for PineTime Smart Watch LVGL Interface

# Name of this Workflow
name: Build PineTime 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 "master" and "develop" Branch
pull_request:
branches: [ master, 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
#########################################################################################
# Checkout

- name: Checkout source files
uses: actions/checkout@v2
with:
submodules: recursive

#########################################################################################
# get InfiniSim repo

- name: Get InfiniSim repo
run: |
git clone https://github.com/InfiniTimeOrg/InfiniSim.git --depth 1 --branch main
git -C InfiniSim submodule update --init lv_drivers
#########################################################################################
# CMake

- name: CMake
run: |
cmake -G Ninja -S InfiniSim -B build_lv_sim -DInfiniTime_DIR="${PWD}"
#########################################################################################
# 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@v2
with:
name: infinisim
path: build_lv_sim/infinisim
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,10 @@ Fast open-source firmware for the [PineTime smartwatch](https://www.pine64.org/p
- [Creating a stopwatch in Pinetime(article)](https://pankajraghav.com/2021/04/03/PINETIME-STOPCLOCK.html)
- [Tips on designing an app UI](doc/ui_guidelines.md)

### InfiniSim Simulator
Use the [InfiniSim Simulator](https://github.com/InfiniTimeOrg/InfiniSim) to experience the `InfiniTime` user interface directly on your PC, to shorten the time until you get your hands on a real [PineTime smartwatch](https://www.pine64.org/pinetime/).
Or use it to develop new Watchfaces, new Screens, or quickly iterate on the user interface.

### Contributing
- [How to contribute?](/doc/contribute.md)
- [Coding conventions](/doc/coding-convention.md)
Expand Down

0 comments on commit 4c92ed4

Please sign in to comment.