mirror of
https://github.com/DreamMaoMao/maomaowm.git
synced 2026-05-02 06:46:29 -04:00
Add build workflow for CI/CD
Co-authored-by: squassina <8495707+squassina@users.noreply.github.com>
This commit is contained in:
parent
173a24d931
commit
3f9c37967a
1 changed files with 73 additions and 0 deletions
73
.github/workflows/build.yml
vendored
Normal file
73
.github/workflows/build.yml
vendored
Normal file
|
|
@ -0,0 +1,73 @@
|
||||||
|
name: Build
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [main, master]
|
||||||
|
pull_request:
|
||||||
|
branches: [main, master]
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Install dependencies
|
||||||
|
run: |
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install -y \
|
||||||
|
meson \
|
||||||
|
ninja-build \
|
||||||
|
wayland-protocols \
|
||||||
|
libwayland-dev \
|
||||||
|
libinput-dev \
|
||||||
|
libxkbcommon-dev \
|
||||||
|
libpcre2-dev \
|
||||||
|
libpixman-1-dev \
|
||||||
|
libdrm-dev \
|
||||||
|
libxcb1-dev \
|
||||||
|
libxcb-icccm4-dev \
|
||||||
|
xwayland \
|
||||||
|
hwdata \
|
||||||
|
libliftoff-dev \
|
||||||
|
libdisplay-info-dev \
|
||||||
|
libseat-dev \
|
||||||
|
pkg-config
|
||||||
|
|
||||||
|
- name: Install wlroots 0.19
|
||||||
|
run: |
|
||||||
|
# Install wlroots 0.19 from source since it may not be in apt
|
||||||
|
git clone https://gitlab.freedesktop.org/wlroots/wlroots.git
|
||||||
|
cd wlroots
|
||||||
|
git checkout 0.19.0
|
||||||
|
meson setup build/ --prefix=/usr
|
||||||
|
sudo ninja -C build/ install
|
||||||
|
sudo ldconfig
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
- name: Install scenefx 0.4
|
||||||
|
run: |
|
||||||
|
# Install scenefx from source
|
||||||
|
git clone -b 0.4.1 https://github.com/wlrfx/scenefx.git
|
||||||
|
cd scenefx
|
||||||
|
meson setup build/ --prefix=/usr
|
||||||
|
sudo ninja -C build/ install
|
||||||
|
sudo ldconfig
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
- name: Configure meson
|
||||||
|
run: |
|
||||||
|
meson setup build/ --prefix=/usr
|
||||||
|
|
||||||
|
- name: Build project
|
||||||
|
run: |
|
||||||
|
ninja -C build/
|
||||||
|
|
||||||
|
- name: Build summary
|
||||||
|
run: |
|
||||||
|
echo "✅ Build completed successfully!"
|
||||||
|
echo "Built executables:"
|
||||||
|
ls -lh build/mango build/mmsg
|
||||||
Loading…
Add table
Add a link
Reference in a new issue