Skip to content

Commit 93cba44

Browse files
committed
Refactor GitHub Actions workflow to unify output directories and streamline build configurations for all backends
1 parent e2a938b commit 93cba44

File tree

1 file changed

+37
-28
lines changed

1 file changed

+37
-28
lines changed

.github/workflows/cmake-unified.yml

Lines changed: 37 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,31 @@ on:
44
workflow_dispatch:
55

66
jobs:
7+
build-base:
8+
name: Build (Base)
9+
uses: JunaMeinhold/cmake-actions/.github/workflows/[email protected]
10+
with:
11+
lib-name: ImGuiImpl
12+
repo: HexaEngine/cimgui_impl
13+
repo-tag: master
14+
cmake-flags: -DBACKENDS_BASE_ONLY=ON -DIMGUI_WCHAR32=ON
15+
cmake-flags-windows: -DCMAKE_SYSTEM_VERSION=10.0.26100.0
16+
bin-name-osx: libImGuiImpl.dylib
17+
bin-name-linux: libImGuiImpl.so
18+
bin-name-android: libImGuiImpl.so
19+
bin-name-windows: Release/ImGuiImpl.dll
20+
bin-name-osx-normalized: ImGuiImpl.dylib
21+
bin-name-linux-normalized: ImGuiImpl.so
22+
bin-name-android-normalized: ImGuiImpl.so
23+
bin-name-windows-normalized: ImGuiImpl.dll
24+
output-dir: native
25+
linux-deps: "build-essential cmake libsdl2-dev libglfw3-dev libglu1-mesa-dev libvulkan-dev patchelf"
26+
macos-deps: "sdl2 glfw glew glm"
27+
setup-vulkan: true
28+
setup-vulkan-linux: false
29+
setup-vulkan-windows: false
30+
create-pr: false
31+
732
build-sdl2:
833
name: Build (SDL2)
934
uses: JunaMeinhold/cmake-actions/.github/workflows/[email protected]
@@ -21,12 +46,11 @@ jobs:
2146
bin-name-linux-normalized: ImGuiImplSDL2.so
2247
bin-name-android-normalized: ImGuiImplSDL2.so
2348
bin-name-windows-normalized: ImGuiImplSDL2.dll
24-
output-dir: build
49+
output-dir: native
2550
linux-deps: "build-essential cmake libsdl2-dev libglfw3-dev libglu1-mesa-dev libvulkan-dev patchelf"
2651
macos-deps: "sdl2 glfw glew glm"
2752
use-vcpkg: true
2853
use-vcpkg-linux: false
29-
use-vcpkg-macos: false
3054
vcpkg-packages: "sdl2"
3155
setup-vulkan: true
3256
setup-vulkan-linux: false
@@ -51,7 +75,7 @@ jobs:
5175
bin-name-linux-normalized: ImGuiImplSDL3.so
5276
bin-name-android-normalized: ImGuiImplSDL3.so
5377
bin-name-windows-normalized: ImGuiImplSDL3.dll
54-
output-dir: build
78+
output-dir: native
5579
linux-deps: "build-essential cmake libsdl2-dev libglfw3-dev libglu1-mesa-dev libvulkan-dev patchelf libasound2-dev libpulse-dev libaudio-dev libx11-dev libxext-dev libxrandr-dev libxcursor-dev libxfixes-dev libxi-dev libxinerama-dev libxss-dev libwayland-dev libwayland-egl-backend-dev libdbus-1-dev libudev-dev libgles2-mesa-dev libegl1-mesa-dev libgl1-mesa-dev libibus-1.0-dev fcitx-libs-dev libsamplerate0-dev ccache libjack-jackd2-dev libdrm-dev libpipewire-0.3-dev libdecor-0-dev qtwayland5 libxkbcommon-dev libsndio-dev libpng-dev libjpeg-dev libtiff-dev libwebp-dev libavif-dev"
5680
macos-deps: "sdl2 glfw glew glm"
5781
pre-configure-steps: "bash scripts/build_sdl3.sh"
@@ -78,39 +102,24 @@ jobs:
78102
bin-name-linux-normalized: ImGuiImplGLFW.so
79103
bin-name-android-normalized: ImGuiImplGLFW.so
80104
bin-name-windows-normalized: ImGuiImplGLFW.dll
81-
output-dir: build
105+
output-dir: native
82106
linux-deps: "build-essential cmake libsdl2-dev libglfw3-dev libglu1-mesa-dev libvulkan-dev patchelf"
83107
macos-deps: "sdl2 glfw glew glm"
84108
use-vcpkg: true
85109
use-vcpkg-linux: false
86-
use-vcpkg-macos: false
87110
vcpkg-packages: "glfw3"
88111
setup-vulkan: true
89112
setup-vulkan-linux: false
90113
setup-vulkan-windows: false
91114
create-pr: false
92115

93-
build-base:
94-
name: Build (Base)
95-
uses: JunaMeinhold/cmake-actions/.github/workflows/[email protected]
116+
create-pr:
117+
uses: JunaMeinhold/cmake-actions/.github/workflows/[email protected]
118+
needs: [build-base, build-glfw, build-sdl3, build-sdl2]
96119
with:
97-
lib-name: ImGuiImpl
98-
repo: HexaEngine/cimgui_impl
99-
repo-tag: master
100-
cmake-flags: -DBACKENDS_BASE_ONLY=ON -DIMGUI_WCHAR32=ON
101-
cmake-flags-windows: -DCMAKE_SYSTEM_VERSION=10.0.26100.0
102-
bin-name-osx: libImGuiImpl.dylib
103-
bin-name-linux: libImGuiImpl.so
104-
bin-name-android: libImGuiImpl.so
105-
bin-name-windows: Release/ImGuiImpl.dll
106-
bin-name-osx-normalized: ImGuiImpl.dylib
107-
bin-name-linux-normalized: ImGuiImpl.so
108-
bin-name-android-normalized: ImGuiImpl.so
109-
bin-name-windows-normalized: ImGuiImpl.dll
110-
output-dir: build
111-
linux-deps: "build-essential cmake libsdl2-dev libglfw3-dev libglu1-mesa-dev libvulkan-dev patchelf"
112-
macos-deps: "sdl2 glfw glew glm"
113-
setup-vulkan: true
114-
setup-vulkan-linux: false
115-
setup-vulkan-windows: false
116-
create-pr: false
120+
lib-name: Dear ImGui Backends
121+
repo-tag: latest
122+
output-dir: native
123+
branch: native-artifacts-branch
124+
base: master
125+
reviewers: JunaMeinhold

0 commit comments

Comments
 (0)