Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
85 changes: 85 additions & 0 deletions .github/workflows/ci-imgui-debian13.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
name: Build ImGUI on Debian 13

on:
push:
branches: [ main ]
paths:
- "src/**"
- "!src/Plugins/Macos/**"
- "!src/Plugins/Windows/**"
- "tests/**"
- "lolly/**"
- "moebius/**"
- "xmake.lua"
- 'xmake/options.lua'
- 'xmake/requires.lua'
- 'xmake/targets/**'
- "xmake/packages.lua"
- "xmake/packages/**"
- ".github/workflows/ci-imgui-debian13.yml"
- "TeXmacs/tests/*.scm"
- "3rdparty/**"
pull_request:
branches: [ main ]
paths:
- "src/**"
- "!src/Plugins/Macos/**"
- "!src/Plugins/Windows/**"
- "tests/**"
- "lolly/**"
- "moebius/**"
- "xmake.lua"
- 'xmake/options.lua'
- 'xmake/requires.lua'
- 'xmake/targets/**'
- "xmake/packages.lua"
- "xmake/packages/**"
- ".github/workflows/ci-imgui-debian13.yml"
- "TeXmacs/tests/*.scm"
- "3rdparty/**"
workflow_dispatch:

env:
XMAKE_ROOT: y
XMAKE_GLOBALDIR: /tmp/xmake-global

jobs:
build:
container: debian:13
runs-on: ubuntu-latest
timeout-minutes: 45
steps:
- name: Install dependencies
run: |
DEBIAN_FRONTEND=noninteractive apt-get update
DEBIAN_FRONTEND=noninteractive apt-get install -y gcc g++ git curl build-essential cmake \
libpng-dev libcurl4-openssl-dev libx11-dev libxcursor-dev libxi-dev \
libxinerama-dev libxrandr-dev libgl1-mesa-dev libxkbcommon-dev \
python3.13 python3.13-venv python3-pip ninja-build pkg-config unzip 7zip
update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.13 1

- uses: actions/checkout@v4
with:
fetch-depth: 0

- name: git add safe directory
run: git config --global --add safe.directory '*'

- uses: xmake-io/github-action-setup-xmake@v1
with:
xmake-version: v3.0.7

- name: xmake repo --update
run: xmake repo --update

- name: cache packages from xrepo
uses: actions/cache@v4
with:
path: /tmp/xmake-global/.xmake/packages
key: ${{ runner.os }}-xrepo-imgui-${{ hashFiles('xmake/vars.lua', 'lolly/xmake.lua', 'moebius/xmake.lua', 'xmake/requires.lua') }}

- name: config
run: xmake config -vD --qt_frontend=no --policies=build.ccache --yes

- name: build stem
run: xmake b -vD stem
50 changes: 50 additions & 0 deletions .github/workflows/ci-imgui-macos.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: Build ImGUI on macOS

on:
push:
branches: [ main ]
paths:
- 'src/Plugins/ImGui/**'
- ".github/workflows/ci-imgui-macos.yml"
pull_request:
branches: [ main ]
paths:
- 'src/Plugins/ImGui/**'
- ".github/workflows/ci-imgui-macos.yml"
workflow_dispatch:

jobs:
macosbuild:
strategy:
matrix:
os: [macos-14]
arch: [arm64]
runs-on: ${{ matrix.os }}
timeout-minutes: 45
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0

- name: set XMAKE_GLOBALDIR
run: echo "XMAKE_GLOBALDIR=${{ runner.workspace }}/xmake-global" >> $GITHUB_ENV

- uses: xmake-io/github-action-setup-xmake@v1
with:
xmake-version: v3.0.7
actions-cache-folder: '.xmake-cache'

- name: xmake repo --update
run: xmake repo --update

- name: cache packages from xrepo
uses: actions/cache@v4
with:
path: ${{ env.XMAKE_GLOBALDIR }}/.xmake/packages
key: ${{ runner.os }}-xrepo-imgui-${{ matrix.arch }}-${{ hashFiles('xmake/vars.lua', 'lolly/xmake.lua', 'moebius/xmake.lua') }}

- name: config
run: xmake config -vD --qt_frontend=no --policies=build.ccache --yes

- name: build stem
run: xmake b -vD stem
10 changes: 10 additions & 0 deletions devel/0721.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# [0721] 添加 ImGui CI

## What
添加了 ImGui 在 Debian, macOS 上的 CI

目前 Debian CI 的触发条件与现有的 CI 保持一致。

macOS 的触发条件仅为修改了 `src/Plugins/ImGui` 下的文件

Windows 在编译 `brush.cpp` 的时候似乎遇到了 `if not defined` 宏的问题,因此暂时没有添加
Loading