Skip to content
This repository was archived by the owner on Apr 20, 2026. It is now read-only.

Commit a403090

Browse files
committed
build workflow
1 parent 915fec6 commit a403090

1 file changed

Lines changed: 62 additions & 0 deletions

File tree

.github/workflows/build.yml

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
name: Build
2+
3+
on:
4+
push:
5+
branches: [main]
6+
pull_request:
7+
workflow_dispatch:
8+
9+
jobs:
10+
build:
11+
name: ${{ matrix.name }}
12+
runs-on: ${{ matrix.runner }}
13+
strategy:
14+
fail-fast: false
15+
matrix:
16+
include:
17+
- name: linux-x86_64
18+
runner: ubuntu-22.04
19+
os: linux
20+
- name: linux-arm64
21+
runner: ubuntu-22.04-arm
22+
os: linux
23+
- name: macos-arm64
24+
runner: macos-latest
25+
os: macos
26+
- name: macos-x86_64
27+
runner: macos-latest-large
28+
os: macos
29+
30+
steps:
31+
- name: Checkout
32+
uses: actions/checkout@v4
33+
with:
34+
submodules: recursive
35+
36+
- name: Install dependencies (Linux)
37+
if: matrix.os == 'linux'
38+
run: |
39+
sudo apt-get update
40+
sudo apt-get install -y \
41+
build-essential ninja-build pkg-config python3-venv \
42+
libsdl2-dev libpixman-1-dev libglib2.0-dev \
43+
libpcre2-dev libffi-dev zlib1g-dev
44+
45+
- name: Install dependencies (macOS)
46+
if: matrix.os == 'macos'
47+
run: |
48+
brew install sdl2 pixman glib pkg-config ninja
49+
50+
- name: Build
51+
run: bash build.sh
52+
53+
- name: Smoke test binary
54+
run: |
55+
./dist/bin/qemu-pebble --version
56+
57+
- name: Upload dist artifact
58+
uses: actions/upload-artifact@v4
59+
with:
60+
name: qemu-pebble-${{ matrix.name }}
61+
path: dist/
62+
if-no-files-found: error

0 commit comments

Comments
 (0)