aboutsummaryrefslogtreecommitdiff
path: root/graphics/libplacebo
diff options
context:
space:
mode:
authorJan Beich <jbeich@FreeBSD.org>2019-02-03 17:28:37 +0000
committerJan Beich <jbeich@FreeBSD.org>2019-02-03 17:28:37 +0000
commit3b63ab6bbfb2b1d2886e6171723730b977d42c42 (patch)
tree9c3d529f08f76e142b45e0fcd6573faf96f838bf /graphics/libplacebo
parent3f627ab4ceb27d868b1d614957e04bfa927d165b (diff)
downloadports-3b63ab6bbfb2b1d2886e6171723730b977d42c42.tar.gz
ports-3b63ab6bbfb2b1d2886e6171723730b977d42c42.zip
multimedia/vlc: expose HDR tonemapping support
Notes
Notes: svn path=/head/; revision=492057
Diffstat (limited to 'graphics/libplacebo')
-rw-r--r--graphics/libplacebo/Makefile63
-rw-r--r--graphics/libplacebo/distinfo5
-rw-r--r--graphics/libplacebo/pkg-descr14
-rw-r--r--graphics/libplacebo/pkg-plist19
4 files changed, 101 insertions, 0 deletions
diff --git a/graphics/libplacebo/Makefile b/graphics/libplacebo/Makefile
new file mode 100644
index 000000000000..c17172cb5043
--- /dev/null
+++ b/graphics/libplacebo/Makefile
@@ -0,0 +1,63 @@
+# $FreeBSD$
+
+PORTNAME= libplacebo
+DISTVERSIONPREFIX= v
+DISTVERSION= 1.7.0
+CATEGORIES= graphics
+
+PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/
+PATCHFILES+= 95814b653b71.patch:-p1 # don't check shaderc twice
+
+MAINTAINER= jbeich@FreeBSD.org
+COMMENT= Reusable library for GPU-accelerated video/image rendering
+
+LICENSE= LGPL21+
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+USES= compiler:c11 localbase:ldflags meson pkgconfig
+USE_GITHUB= yes
+USE_LDCONFIG= yes
+GH_ACCOUNT= haasn
+
+OPTIONS_DEFINE= LCMS2 TEST VULKAN
+OPTIONS_DEFAULT=LCMS2 SHADERC
+OPTIONS_SINGLE= VULKAN
+OPTIONS_SINGLE_VULKAN= GLSLANG SHADERC
+
+.if !exists(${.CURDIR:H:H}/graphics/shaderc)
+OPTIONS_DEFAULT:= ${OPTIONS_DEFAULT:S/SHADERC/GLSLANG/}
+OPTIONS_EXCLUDE+= SHADERC
+.endif
+
+GLSLANG_DESC= glslang SPIR-V compiler
+GLSLANG_BUILD_DEPENDS= glslang>0:devel/glslang
+GLSLANG_MESON_ON= -Dglslang=enabled
+GLSLANG_MESON_OFF= -Dglslang=disabled
+GLSLANG_IMPLIES= VULKAN
+
+LCMS2_LIB_DEPENDS= liblcms2.so:graphics/lcms2
+LCMS2_MESON_ON= -Dlcms=enabled
+LCMS2_MESON_OFF= -Dlcms=disabled
+
+SHADERC_DESC= libshaderc SPIR-V compiler
+SHADERC_LIB_DEPENDS= libshaderc_shared.so:graphics/shaderc
+SHADERC_MESON_ON= -Dshaderc=enabled
+SHADERC_MESON_OFF= -Dshaderc=disabled
+SHADERC_IMPLIES= VULKAN
+
+TEST_MESON_TRUE= tests
+
+VULKAN_DESC= Vulkan-based renderer
+VULKAN_BUILD_DEPENDS= ${LOCALBASE}/include/vulkan/vulkan.h:devel/vulkan-headers
+VULKAN_LIB_DEPENDS= libvulkan.so:graphics/vulkan-loader
+VULKAN_MESON_ON= -Dvulkan=enabled
+VULKAN_MESON_OFF= -Dvulkan=disabled
+
+post-patch:
+# Extract (snapshot) version from port version instead of meson.build
+ @${REINPLACE_CMD} "s/version_pretty/'${DISTVERSIONFULL}'/" \
+ ${WRKSRC}/src/meson.build
+
+pre-install-TEST-on: do-test
+
+.include <bsd.port.mk>
diff --git a/graphics/libplacebo/distinfo b/graphics/libplacebo/distinfo
new file mode 100644
index 000000000000..ad2700098eb4
--- /dev/null
+++ b/graphics/libplacebo/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1544969285
+SHA256 (haasn-libplacebo-v1.7.0_GH0.tar.gz) = 5ee618bee614aeae9f8bb526329824468f93c740e8fd37fd46d58114fd7977eb
+SIZE (haasn-libplacebo-v1.7.0_GH0.tar.gz) = 312130
+SHA256 (95814b653b71.patch) = 0a0efeb485cd04e514aae612714e962ebb5e18662a4d89f61e2895dc8a7d959a
+SIZE (95814b653b71.patch) = 643
diff --git a/graphics/libplacebo/pkg-descr b/graphics/libplacebo/pkg-descr
new file mode 100644
index 000000000000..e08e5ea9b13f
--- /dev/null
+++ b/graphics/libplacebo/pkg-descr
@@ -0,0 +1,14 @@
+libplacebo is essentially the core rendering algorithms and ideas of
+mpv turned into a library. This grew out of an interest to accomplish
+the following goals:
+
+- Clean up mpv's internal rendering abstraction API and make it
+ reusable for other projects.
+- Provide a standard library of useful GPU-accelerated image processing
+ primitives based on GLSL, so projects like VLC or Firefox can use them
+ without incurring a heavy dependency on libmpv.
+- Rewrite core parts of mpv's GPU-accelerated video renderer on top of
+ redesigned abstractions. (Basically, I wanted to eliminate code smell like
+ shader_cache.c and totally redesign gpu/video.c)
+
+WWW: https://code.videolan.org/videolan/libplacebo
diff --git a/graphics/libplacebo/pkg-plist b/graphics/libplacebo/pkg-plist
new file mode 100644
index 000000000000..b7a237eb7fb1
--- /dev/null
+++ b/graphics/libplacebo/pkg-plist
@@ -0,0 +1,19 @@
+include/libplacebo/colorspace.h
+include/libplacebo/common.h
+include/libplacebo/config.h
+include/libplacebo/context.h
+include/libplacebo/dispatch.h
+include/libplacebo/dither.h
+include/libplacebo/filters.h
+include/libplacebo/gpu.h
+include/libplacebo/renderer.h
+include/libplacebo/shaders.h
+include/libplacebo/shaders/av1.h
+include/libplacebo/shaders/colorspace.h
+include/libplacebo/shaders/sampling.h
+include/libplacebo/swapchain.h
+include/libplacebo/utils/upload.h
+include/libplacebo/vulkan.h
+lib/libplacebo.so
+lib/libplacebo.so.7
+libdata/pkgconfig/libplacebo.pc