libplacebo: add recipe

This commit is contained in:
Gerasim Troeglazov
2024-03-31 11:47:56 +10:00
parent 947eb4ec30
commit 714584e778

View File

@@ -0,0 +1,92 @@
SUMMARY="Reusable library for GPU-accelerated image processing primitives"
DESCRIPTION="Reusable library for GPU-accelerated image/video processing primitives and shaders, \
as well a batteries-included, extensible, high-quality rendering pipeline (similar to mpv's vo_gpu). \
Supports Vulkan, OpenGL, Metal (via MoltenVK) and Direct3D 11."
HOMEPAGE="https://libplacebo.org/"
COPYRIGHT="2017-2022 Niklas Haas"
LICENSE="GNU LGPL v2.1"
REVISION="1"
SOURCE_URI="https://code.videolan.org/videolan/libplacebo/-/archive/v${portVersion}/libplacebo-v${portVersion}.tar.bz2"
CHECKSUM_SHA256="1c02d21720f972cae02111a1286337e9d0e70d623b311a1e4245bac5ce987f28"
SOURCE_DIR="libplacebo-v${portVersion}"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
libplacebo$secondaryArchSuffix = $portVersion compat >= 6
lib:libplacebo$secondaryArchSuffix
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libgl$secondaryArchSuffix
lib:libglslang$secondaryArchSuffix
lib:liblcms2$secondaryArchSuffix
lib:libxxhash$secondaryArchSuffix
lib:libvulkan$secondaryArchSuffix
"
PROVIDES_devel="
libplacebo${secondaryArchSuffix}_devel = $portVersion compat >= 6
devel:libplacebo$secondaryArchSuffix
"
REQUIRES_devel="
libplacebo$secondaryArchSuffix == $portVersion base
devel:libgl$secondaryArchSuffix
devel:liblcms2$secondaryArchSuffix
devel:libxxhash$secondaryArchSuffix
"
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
jinja_python310
devel:libgl$secondaryArchSuffix
devel:libglslang$secondaryArchSuffix
devel:liblcms2$secondaryArchSuffix
devel:libxxhash$secondaryArchSuffix
devel:libvulkan$secondaryArchSuffix
"
BUILD_PREREQUIRES="
cmd:find
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:meson
cmd:ninja
cmd:pkg_config$secondaryArchSuffix
cmd:python3
"
BUILD()
{
meson build \
--buildtype=debugoptimized \
--prefix="$prefix" \
--bindir="$binDir" \
--libdir="$libDir" \
--includedir="$includeDir" \
--datadir="$dataDir" \
-Dopengl=disabled \
-Dvulkan=enabled \
-Dshaderc=disabled \
-Dglslang=enabled \
-Dvulkan-registry=/system/data/vulkan/registry/vk.xml
ninja -C build
}
INSTALL()
{
ninja -C build install
prepareInstalledDevelLib libplacebo
fixPkgconfig
# devel package
packageEntries devel \
$developDir
}
TEST()
{
ninja -C build test
}