ImGui port (#13930)

This commit is contained in:
Peppersawce
2026-04-13 13:18:46 +02:00
committed by GitHub
parent 828dadf217
commit 9aadbc5e80
2 changed files with 462 additions and 0 deletions

View File

@@ -0,0 +1,80 @@
SUMMARY="Bloat-free Graphical User interface for C++ with minimal dependencies"
DESCRIPTION="Dear ImGui is a bloat-free graphical user interface library for C++. It outputs optimized vertex buffers \
that you can render anytime in your 3D-pipeline-enabled application.
It is fast, portable, renderer agnostic, and self-contained (no external dependencies)."
HOMEPAGE="https://github.com/ocornut/imgui"
COPYRIGHT="2026 Omar Cornut and ImGui contributors"
LICENSE="MIT"
REVISION="1"
SOURCE_URI="https://github.com/ocornut/imgui/archive/refs/tags/v$portVersion.tar.gz"
CHECKSUM_SHA256="b21b14ce1ef6dd4d85fa54f68f8449a9be94f3b453aba7fe4ea2a9764e43a5ef"
PATCHES="imgui-$portVersion.patchset"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
imgui$secondaryArchSuffix = $portVersion
lib:libimgui$secondaryArchSuffix
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libfreetype$secondaryArchSuffix
lib:libglfw$secondaryArchSuffix
lib:libSDL3$secondaryArchSuffix
lib:libvulkan$secondaryArchSuffix
"
PROVIDES_devel="
imgui${secondaryArchSuffix}_devel = $portVersion
devel:libimgui$secondaryArchSuffix
"
REQUIRES_devel="
imgui$secondaryArchSuffix == $portVersion base
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
devel:libfreetype$secondaryArchSuffix
devel:libgl$secondaryArchSuffix
devel:libglfw$secondaryArchSuffix
devel:libglu$secondaryArchSuffix
devel:libSDL3$secondaryArchSuffix
devel:libvulkan$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:cmake
cmd:gcc$secondaryArchSuffix
cmd:make
"
BUILD()
{
freetypedir=$(finddir B_SYSTEM_DEVELOP_DIRECTORY)/headers/freetype2
cmake -Bbuild -S. $cmakeDirArgs -DCMAKE_BUILD_TYPE=Release \
-DFREETYPE_INCLUDE_DIR=$freetypedir \
-DIMGUI_BUILD_GLFW_BINDING=ON \
-DIMGUI_BUILD_OPENGL2_BINDING=ON \
-DIMGUI_BUILD_OPENGL3_BINDING=ON \
-DIMGUI_BUILD_SDL3_BINDING=ON \
-DIMGUI_BUILD_SDL3_RENDERER_BINDING=ON \
-DIMGUI_BUILD_SDLGPU3_BINDING=ON \
-DIMGUI_BUILD_VULKAN_BINDING=ON \
-DIMGUI_FREETYPE=ON \
-DBUILD_SHARED_LIBS=ON
make -C build $jobArgs
}
INSTALL()
{
make -C build install
prepareInstalledDevelLib libimgui
# devel package
packageEntries devel \
$developDir \
$libDir/cmake
}