* [Buildroot] [PATCH 1/2] package/libplacebo: add libplacebo package
@ 2024-07-19 16:15 Javad Rahimipetroudi via buildroot
2024-07-19 16:15 ` [Buildroot] [PATCH 2/2] package/mpv: bump version to v0.38.0 Javad Rahimipetroudi via buildroot
2024-10-22 4:15 ` [Buildroot] [PATCH 1/2] package/libplacebo: add libplacebo package Sen Hastings
0 siblings, 2 replies; 7+ messages in thread
From: Javad Rahimipetroudi via buildroot @ 2024-07-19 16:15 UTC (permalink / raw)
To: buildroot; +Cc: Javad Rahimipetroudi
This patch adds libplacebo package that is used
by mpv player.
libplacebo is the core rendering algorithms and
ideas of mpv rewritten as an independent library
and contains a large assortment of video processing
shaders, focusing on both quality and performance.
Signed-off-by: Javad Rahimipetroudi <javad.rahimipetroudi@mind.be>
---
package/Config.in | 1 +
...ild-fix-linker-error-in-uclibc-sparc.patch | 45 +++++++++++++++++++
...h-add-static_assert-define-for-ulibc.patch | 36 +++++++++++++++
package/libplacebo/Config.in | 18 ++++++++
package/libplacebo/libplacebo.hash | 2 +
package/libplacebo/libplacebo.mk | 15 +++++++
6 files changed, 117 insertions(+)
create mode 100644 package/libplacebo/0001-meson.build-fix-linker-error-in-uclibc-sparc.patch
create mode 100644 package/libplacebo/0002-src-pl_assert.h-add-static_assert-define-for-ulibc.patch
create mode 100644 package/libplacebo/Config.in
create mode 100644 package/libplacebo/libplacebo.hash
create mode 100644 package/libplacebo/libplacebo.mk
diff --git a/package/Config.in b/package/Config.in
index f2e10b2b5e..1207001640 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1509,6 +1509,7 @@ menu "Audio/Sound"
source "package/libmodplug/Config.in"
source "package/libmpdclient/Config.in"
source "package/libopenmpt/Config.in"
+ source "package/libplacebo/Config.in"
source "package/libreplaygain/Config.in"
source "package/libsamplerate/Config.in"
source "package/libsidplay2/Config.in"
diff --git a/package/libplacebo/0001-meson.build-fix-linker-error-in-uclibc-sparc.patch b/package/libplacebo/0001-meson.build-fix-linker-error-in-uclibc-sparc.patch
new file mode 100644
index 0000000000..3056d28651
--- /dev/null
+++ b/package/libplacebo/0001-meson.build-fix-linker-error-in-uclibc-sparc.patch
@@ -0,0 +1,45 @@
+From 4386f3e3b3d02c55776e3f674d8447fd24388c2c Mon Sep 17 00:00:00 2001
+From: Javad Rahimipetroudi <javad.rahimipetroudi@mind.be>
+Date: Fri, 19 Jul 2024 07:02:48 +0200
+Subject: [PATCH] meson.build: add libatomic dependency if needed
+
+This PR fixes the problem related to not finding the libatomic during the
+build. Some combinations or architecture and libc (e.g. uClibc on SPARC)
+operations in a separate library and don't link with it automatically.
+An optional find_library to meson.build has been added to
+discover this.
+
+
+Fixes:
+ - https://github.com/haasn/libplacebo/issues/278
+
+Signed-off-by: Javad Rahimipetroudi <javad.rahimipetroudi@mind.be>
+Upstream: https://github.com/haasn/libplacebo/commit/4386f3e3b3d02c55776e3f674d8447fd24388c2c
+---
+ meson.build | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index a73e49ff..f8cbf9f1 100644
+--- a/meson.build
++++ b/meson.build
+@@ -448,6 +448,7 @@ add_project_link_arguments(link_args, language: ['c', 'cpp'])
+ # Global dependencies
+ fs = import('fs')
+ libm = cc.find_library('m', required: false)
++atomic = cc.find_library('atomic', required: false)
+ thirdparty = meson.project_source_root()/'3rdparty'
+ python = import('python').find_installation()
+ python_env = environment()
+@@ -473,7 +474,7 @@ else
+ )
+ endif
+
+-build_deps = [ libm, threads ]
++build_deps = [ libm, threads, atomic]
+
+ subdir('tools')
+ subdir('src')
+--
+2.45.2
+
diff --git a/package/libplacebo/0002-src-pl_assert.h-add-static_assert-define-for-ulibc.patch b/package/libplacebo/0002-src-pl_assert.h-add-static_assert-define-for-ulibc.patch
new file mode 100644
index 0000000000..6960c2f219
--- /dev/null
+++ b/package/libplacebo/0002-src-pl_assert.h-add-static_assert-define-for-ulibc.patch
@@ -0,0 +1,36 @@
+From 0182e2b94bbc6bb964f96527d18e93c9b4709a3a Mon Sep 17 00:00:00 2001
+From: Javad Rahimipetroudi <javad.rahimipetroudi@mind.be>
+Date: Fri, 19 Jul 2024 07:57:45 +0200
+Subject: [PATCH] src/pl_assert.h:add static_assert define for ulibc
+
+This PR adds the static_assert macro defination for uClibc that is
+missed in some platforms. However, it is limited to C versions lower
+than C23. From C23, static_assert is not defined as macro anymore:
+https://en.cppreference.com/w/c/language/_Static_assert
+
+Signed-off-by: Javad Rahimipetroudi <javad.rahimipetroudi@mind.be>
+Upstream: https://github.com/haasn/libplacebo/commit/0182e2b94bbc6bb964f96527d18e93c9b4709a3a
+---
+ src/pl_assert.h | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/pl_assert.h b/src/pl_assert.h
+index b4c6656c..de9d3547 100644
+--- a/src/pl_assert.h
++++ b/src/pl_assert.h
+@@ -20,6 +20,12 @@
+ #include <stdio.h>
+ #include <assert.h>
+
++#if !defined (__cplusplus)
++#if (__STDC_VERSION__ < 202301L)
++#define static_assert _Static_assert
++#endif
++#endif
++
+ #ifndef NDEBUG
+ # define pl_assert assert
+ #else
+--
+2.45.2
+
diff --git a/package/libplacebo/Config.in b/package/libplacebo/Config.in
new file mode 100644
index 0000000000..e2fc434248
--- /dev/null
+++ b/package/libplacebo/Config.in
@@ -0,0 +1,18 @@
+config BR2_PACKAGE_LIBPLACEBO
+ bool "libplacebo"
+ depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
+ depends on BR2_INSTALL_LIBSTDCPP
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_10 #C++20
+ depends on BR2_TOOLCHAIN_HAS_ATOMIC
+ depends on !BR2_STATIC_LIBS # needs <dlfcn.h>
+
+ help
+ libplacebo is, in a nutshell, the core rendering
+ algorithms and ideas of mpv rewritten as an
+ independent library. As of today, libplacebo
+ contains a large assortment of video processing
+ shaders, focusing on both quality and performance.
+
+comment "libplacebo needs a toolchain w/ dynamic library, threads, and dynamic loading"
+ depends on BR2_USE_MMU
+ depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS
diff --git a/package/libplacebo/libplacebo.hash b/package/libplacebo/libplacebo.hash
new file mode 100644
index 0000000000..d1588a608b
--- /dev/null
+++ b/package/libplacebo/libplacebo.hash
@@ -0,0 +1,2 @@
+sha256 afaaf16668a1dfaa5f5bf7329713d0dd89cf2ca0dbe7c68aeea894d333e2503e libplacebo-v7.349.0-git4.tar.gz
+sha256 b3aa400aca6d2ba1f0bd03bd98d03d1fe7489a3bbb26969d72016360af8a5c9d LICENSE
diff --git a/package/libplacebo/libplacebo.mk b/package/libplacebo/libplacebo.mk
new file mode 100644
index 0000000000..ae3cb68022
--- /dev/null
+++ b/package/libplacebo/libplacebo.mk
@@ -0,0 +1,15 @@
+################################################################################
+#
+# libplacebo
+#
+################################################################################
+
+LIBPLACEBO_VERSION = v7.349.0
+LIBPLACEBO_SITE = https://github.com/haasn/libplacebo
+LIBPLACEBO_SITE_METHOD = git
+LIBPLACEBO_GIT_SUBMODULES = YES
+LIBPLACEBO_LICENSE = LGPL-2.1
+LIBPLACEBO_LICENSE_FILES = LICENSE
+LIBPLACEBO_INSTALL_STAGING = YES
+
+$(eval $(meson-package))
--
2.45.2
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Buildroot] [PATCH 2/2] package/mpv: bump version to v0.38.0
2024-07-19 16:15 [Buildroot] [PATCH 1/2] package/libplacebo: add libplacebo package Javad Rahimipetroudi via buildroot
@ 2024-07-19 16:15 ` Javad Rahimipetroudi via buildroot
2025-05-16 16:59 ` Arnout Vandecappelle via buildroot
2024-10-22 4:15 ` [Buildroot] [PATCH 1/2] package/libplacebo: add libplacebo package Sen Hastings
1 sibling, 1 reply; 7+ messages in thread
From: Javad Rahimipetroudi via buildroot @ 2024-07-19 16:15 UTC (permalink / raw)
To: buildroot; +Cc: Javad Rahimipetroudi
The waf build system is currently broken in Buildroot, since
the bump to Python 3.12. This causes mpv to fail to build.
A simple workaround is to switch to bump version to v0.38.0
and switch to meson - waf support will be removed entirely
in later releases.
Bumping version to v0.38.0 was required, because building
v0.35.1 was failed even when switching to meson. For this
reason, this patch both upgrades the mpv version and also
change the build system to meson.
Due to such change 0001-fix-powerpc64-altivec.patch also
has been removed. As it was modifing waflib for ppc64.
The conversion of all options was checked by verifying in
meson_options.txt that the option name hasn't changed.
Fixes: http://autobuild.buildroot.net/results/474/474d6b3cb4c3582d7bca2e4f93188b9f7e01aa8e
Signed-off-by: Javad Rahimipetroudi <javad.rahimipetroudi@mind.be>
---
.checkpackageignore | 1 -
package/mpv/0001-fix-powerpc64-altivec.patch | 32 -----
package/mpv/Config.in | 1 +
package/mpv/mpv.hash | 2 +-
package/mpv/mpv.mk | 127 +++++++++----------
5 files changed, 64 insertions(+), 99 deletions(-)
delete mode 100644 package/mpv/0001-fix-powerpc64-altivec.patch
diff --git a/.checkpackageignore b/.checkpackageignore
index 2e6e8a9cac..1432b3af3b 100644
--- a/.checkpackageignore
+++ b/.checkpackageignore
@@ -950,7 +950,6 @@ package/motion/S99motion Shellcheck lib_sysv.Indent lib_sysv.Variables
package/mpd/0001-src-event-meson.build-add-atomic-dependency-for-spar.patch lib_patch.Upstream
package/mpd/S95mpd lib_sysv.Variables
package/mpir/0001-mpn-arm-udiv.asm-workaround-binutils-bug-14887.patch lib_patch.Upstream
-package/mpv/0001-fix-powerpc64-altivec.patch lib_patch.Upstream
package/mraa/0001-include-Declare-gVERSION-global-as-extern.patch lib_patch.Upstream
package/mrouted/S41mrouted NotExecutable
package/mrp/S65mrp lib_sysv.Indent lib_sysv.Variables
diff --git a/package/mpv/0001-fix-powerpc64-altivec.patch b/package/mpv/0001-fix-powerpc64-altivec.patch
deleted file mode 100644
index 45983fec8f..0000000000
--- a/package/mpv/0001-fix-powerpc64-altivec.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Subject: [PATCH] Work around bool type redefinition by altivec
-
-On powerpc64le, the SDL header may include altivec.h and this
-(combined with -std=c99) will cause a compile failure due to bool
-being redefined as a vector type.
-
-Adjust the compiler flags to add -std=gnu99 (which is compatible with
-altivec) when using gcc. The generic flag '-std=c99' is left in place for other
-compilers (in the gcc case it is overridden by the (later) gnu flag).
-
-Signed-off-by: Sam Bobroff <sam.bobroff@au1.ibm.com>
----
- waftools/detections/compiler.py | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/waftools/detections/compiler.py b/waftools/detections/compiler.py
-index 5bbba87..50836a2 100644
---- a/waftools/detections/compiler.py
-+++ b/waftools/detections/compiler.py
-@@ -43,7 +43,8 @@ def __add_gcc_flags__(ctx):
- "-Wno-switch", "-Wparentheses", "-Wpointer-arith",
- "-Wno-pointer-sign",
- # GCC bug 66425
-- "-Wno-unused-result"]
-+ "-Wno-unused-result",
-+ "-std=gnu99"]
-
- def __add_clang_flags__(ctx):
- ctx.env.CFLAGS += ["-Wno-logical-op-parentheses", "-fcolor-diagnostics",
---
-2.10.0.297.gf6727b0
-
diff --git a/package/mpv/Config.in b/package/mpv/Config.in
index 5c32f593fe..1eb4294c0d 100644
--- a/package/mpv/Config.in
+++ b/package/mpv/Config.in
@@ -18,6 +18,7 @@ config BR2_PACKAGE_MPV
select BR2_PACKAGE_FFMPEG
select BR2_PACKAGE_FFMPEG_SWSCALE
select BR2_PACKAGE_LIBASS
+ select BR2_PACKAGE_LIBPLACEBO
select BR2_PACKAGE_ZLIB
select BR2_PACKAGE_WAYLAND_PROTOCOLS if BR2_PACKAGE_WAYLAND
# Select xkbcommon for wayland to avoid being mysterious
diff --git a/package/mpv/mpv.hash b/package/mpv/mpv.hash
index a09015619d..6f55f369fb 100644
--- a/package/mpv/mpv.hash
+++ b/package/mpv/mpv.hash
@@ -1,3 +1,3 @@
# Locally calculated
-sha256 41df981b7b84e33a2ef4478aaf81d6f4f5c8b9cd2c0d337ac142fc20b387d1a9 mpv-0.35.1.tar.gz
+sha256 86d9ef40b6058732f67b46d0bbda24a074fae860b3eaae05bab3145041303066 mpv-0.38.0.tar.gz
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.GPL
diff --git a/package/mpv/mpv.mk b/package/mpv/mpv.mk
index cf37091186..4977e6a291 100644
--- a/package/mpv/mpv.mk
+++ b/package/mpv/mpv.mk
@@ -4,207 +4,204 @@
#
################################################################################
-MPV_VERSION = 0.35.1
+MPV_VERSION = 0.38.0
MPV_SITE = $(call github,mpv-player,mpv,v$(MPV_VERSION))
MPV_DEPENDENCIES = \
- host-pkgconf ffmpeg libass zlib \
+ host-pkgconf ffmpeg libass libplacebo zlib \
$(if $(BR2_PACKAGE_LIBICONV),libiconv)
MPV_LICENSE = GPL-2.0+
MPV_LICENSE_FILES = LICENSE.GPL
MPV_CPE_ID_VENDOR = mpv
MPV_INSTALL_STAGING = YES
-MPV_NEEDS_EXTERNAL_WAF = YES
-
# Some of these options need testing and/or tweaks
MPV_CONF_OPTS = \
- --prefix=/usr \
- --disable-android \
- --disable-caca \
- --disable-cocoa \
- --disable-coreaudio \
- --disable-cuda-hwaccel \
- --disable-opensles \
- --disable-rubberband \
- --disable-uchardet \
- --disable-vapoursynth
+ -Degl-android=disabled\
+ -Dcaca=disabled \
+ -Dcocoa=disabled \
+ -Dcoreaudio=disabled \
+ -Dcuda-hwaccel=disabled \
+ -Dopensles=disabled \
+ -Drubberband=disabled \
+ -Duchardet=disabled \
+ -Dvapoursynth=disabled
ifeq ($(BR2_REPRODUCIBLE),y)
-MPV_CONF_OPTS += --disable-build-date
+MPV_CONF_OPTS += -Dbuild-date=disabled
endif
ifeq ($(BR2_STATIC_LIBS),y)
-MPV_CONF_OPTS += --disable-libmpv-shared --enable-libmpv-static
+MPV_CONF_OPTS += -Dlibmpv=true
else
-MPV_CONF_OPTS += --enable-libmpv-shared --disable-libmpv-static
+MPV_CONF_OPTS += -Dlibmpv=false
endif
ifeq ($(BR2_PACKAGE_ALSA_LIB),y)
-MPV_CONF_OPTS += --enable-alsa
+MPV_CONF_OPTS += -Dalsa=enabled
MPV_DEPENDENCIES += alsa-lib
else
-MPV_CONF_OPTS += --disable-alsa
+MPV_CONF_OPTS += -Dalsa=disabled
endif
ifeq ($(BR2_PACKAGE_MESA3D_GBM),y)
-MPV_CONF_OPTS += --enable-gbm
+MPV_CONF_OPTS += -Dgbm=enabled
MPV_DEPENDENCIES += mesa3d
ifeq ($(BR2_PACKAGE_LIBDRM),y)
-MPV_CONF_OPTS += --enable-egl-drm
+MPV_CONF_OPTS += -Degl-drm=enabled
else
-MPV_CONF_OPTS += --disable-egl-drm
+MPV_CONF_OPTS += -Degl-drm=disabled
endif
else
-MPV_CONF_OPTS += --disable-gbm --disable-egl-drm
+MPV_CONF_OPTS += -Dgbm=disabled -Degl-drm=disabled
endif
# jack support
# It also requires 64-bit sync intrinsics
ifeq ($(BR2_TOOLCHAIN_HAS_SYNC_8)$(BR2_PACKAGE_JACK2),yy)
-MPV_CONF_OPTS += --enable-jack
+MPV_CONF_OPTS += -Djack=enabled
MPV_DEPENDENCIES += jack2
else
-MPV_CONF_OPTS += --disable-jack
+MPV_CONF_OPTS += -Djack=disabled
endif
# jpeg support
ifeq ($(BR2_PACKAGE_JPEG),y)
-MPV_CONF_OPTS += --enable-jpeg
+MPV_CONF_OPTS += -Djpeg=enabled
MPV_DEPENDENCIES += jpeg
else
-MPV_CONF_OPTS += --disable-jpeg
+MPV_CONF_OPTS += -Djpeg=disabled
endif
# lcms2 support
ifeq ($(BR2_PACKAGE_LCMS2),y)
-MPV_CONF_OPTS += --enable-lcms2
+MPV_CONF_OPTS += -Dlcms2=enabled
MPV_DEPENDENCIES += lcms2
else
-MPV_CONF_OPTS += --disable-lcms2
+MPV_CONF_OPTS += -Dlcms2=disabled
endif
# libarchive support
ifeq ($(BR2_PACKAGE_LIBARCHIVE),y)
-MPV_CONF_OPTS += --enable-libarchive
+MPV_CONF_OPTS += -Dlibarchive=enabled
MPV_DEPENDENCIES += libarchive
else
-MPV_CONF_OPTS += --disable-libarchive
+MPV_CONF_OPTS += -Dlibarchive=disabled
endif
# bluray support
ifeq ($(BR2_PACKAGE_LIBBLURAY),y)
-MPV_CONF_OPTS += --enable-libbluray
+MPV_CONF_OPTS += -Dlibbluray=enabled
MPV_DEPENDENCIES += libbluray
else
-MPV_CONF_OPTS += --disable-libbluray
+MPV_CONF_OPTS += -Dlibbluray=disabled
endif
# libcdio-paranoia
ifeq ($(BR2_PACKAGE_LIBCDIO_PARANOIA),y)
-MPV_CONF_OPTS += --enable-cdda
+MPV_CONF_OPTS += -Dcdda=enabled
MPV_DEPENDENCIES += libcdio-paranoia
else
-MPV_CONF_OPTS += --disable-cdda
+MPV_CONF_OPTS += -Dcdda=disabled
endif
# libdvdnav
ifeq ($(BR2_PACKAGE_LIBDVDNAV),y)
-MPV_CONF_OPTS += --enable-dvdnav
+MPV_CONF_OPTS += -Ddvdnav=enabled
MPV_DEPENDENCIES += libdvdnav
else
-MPV_CONF_OPTS += --disable-dvdnav
+MPV_CONF_OPTS += -Ddvdnav=disabled
endif
# libdrm
ifeq ($(BR2_PACKAGE_LIBDRM),y)
-MPV_CONF_OPTS += --enable-drm
+MPV_CONF_OPTS += -Ddrm=enabled
MPV_DEPENDENCIES += libdrm
else
-MPV_CONF_OPTS += --disable-drm
+MPV_CONF_OPTS += -Ddrm=disabled
endif
# libvdpau
ifeq ($(BR2_PACKAGE_LIBVDPAU),y)
-MPV_CONF_OPTS += --enable-vdpau
+MPV_CONF_OPTS += -Dvdpau=enabled
MPV_DEPENDENCIES += libvdpau
else
-MPV_CONF_OPTS += --disable-vdpau
+MPV_CONF_OPTS += -Dvdpau=disabled
endif
# LUA support, only for lua51/lua52/luajit
# This enables the controller (OSD) together with libass
ifeq ($(BR2_PACKAGE_LUA_5_1)$(BR2_PACKAGE_LUAJIT),y)
-MPV_CONF_OPTS += --enable-lua
+MPV_CONF_OPTS += -Dlua=enabled
MPV_DEPENDENCIES += luainterpreter
else
-MPV_CONF_OPTS += --disable-lua
+MPV_CONF_OPTS += -Dlua=disabled
endif
# OpenGL support
ifeq ($(BR2_PACKAGE_HAS_LIBGL),y)
-MPV_CONF_OPTS += --enable-gl
+MPV_CONF_OPTS += -Dgl=enabled
MPV_DEPENDENCIES += libgl
else ifeq ($(BR2_PACKAGE_HAS_LIBGLES),y)
-MPV_CONF_OPTS += --enable-gl
+MPV_CONF_OPTS += -Dgl=enabled
MPV_DEPENDENCIES += libgles
else ifeq ($(BR2_PACKAGE_HAS_LIBEGL),y)
-MPV_CONF_OPTS += --enable-gl
+MPV_CONF_OPTS += -Dgl=enabled
MPV_DEPENDENCIES += libegl
else
-MPV_CONF_OPTS += --disable-gl
+MPV_CONF_OPTS += -Dgl=disabled
endif
# pulseaudio support
ifeq ($(BR2_PACKAGE_PULSEAUDIO),y)
-MPV_CONF_OPTS += --enable-pulse
+MPV_CONF_OPTS += -Dpulse=enabled
MPV_DEPENDENCIES += pulseaudio
else
-MPV_CONF_OPTS += --disable-pulse
+MPV_CONF_OPTS += -Dpulse=disabled
endif
# SDL support
# Sdl2 requires 64-bit sync intrinsics
ifeq ($(BR2_TOOLCHAIN_HAS_SYNC_8)$(BR2_PACKAGE_SDL2),yy)
-MPV_CONF_OPTS += --enable-sdl2
+MPV_CONF_OPTS += -Dsdl2=enabled
MPV_DEPENDENCIES += sdl2
else
-MPV_CONF_OPTS += --disable-sdl2
+MPV_CONF_OPTS += -Dsdl2=disabled
endif
# Raspberry Pi support
ifeq ($(BR2_PACKAGE_RPI_USERLAND),y)
-MPV_CONF_OPTS += --enable-rpi --enable-gl
+#MPV_CONF_OPTS += -Drpi=enabled -Dgl=enabled
MPV_DEPENDENCIES += rpi-userland
-else
-MPV_CONF_OPTS += --disable-rpi
+#else
+#MPV_CONF_OPTS += -Drpi=disabled
endif
# va-api support
ifeq ($(BR2_PACKAGE_LIBVA)$(BR2_PACKAGE_MPV_SUPPORTS_VAAPI),yy)
-MPV_CONF_OPTS += --enable-vaapi
+MPV_CONF_OPTS += -Dvaapi=enabled
MPV_DEPENDENCIES += libva
ifeq ($(BR2_PACKAGE_LIBDRM)$(BR2_PACKAGE_MESA3D_OPENGL_EGL),yy)
-MPV_CONF_OPTS += --enable-vaapi-drm
+MPV_CONF_OPTS += -Dvaapi-drm=enabled
else
-MPV_CONF_OPTS += --disable-vaapi-drm
+MPV_CONF_OPTS += -Dvaapi-drm=disabled
endif
else
-MPV_CONF_OPTS += --disable-vaapi --disable-vaapi-drm
+MPV_CONF_OPTS += -Dvaapi=disabled -Dvaapi-drm=disabled
endif
# wayland support
ifeq ($(BR2_PACKAGE_WAYLAND),y)
-MPV_CONF_OPTS += --enable-wayland
+MPV_CONF_OPTS += -Dwayland=enabled
MPV_DEPENDENCIES += libxkbcommon wayland wayland-protocols
else
-MPV_CONF_OPTS += --disable-wayland
+MPV_CONF_OPTS += -Dwayland=disabled
endif
# Base X11 support. Config.in ensures that if BR2_PACKAGE_XORG7 is
# enabled, xlib_libX11, xlib_libXext, xlib_libXinerama,
# xlib_libXrandr, xlib_libXScrnSaver.
ifeq ($(BR2_PACKAGE_XORG7),y)
-MPV_CONF_OPTS += --enable-x11
+MPV_CONF_OPTS += -Dx11=enabled
MPV_DEPENDENCIES += \
xlib_libX11 \
xlib_libXext \
@@ -214,17 +211,17 @@ MPV_DEPENDENCIES += \
xlib_libXScrnSaver
# XVideo
ifeq ($(BR2_PACKAGE_XLIB_LIBXV),y)
-MPV_CONF_OPTS += --enable-xv
+MPV_CONF_OPTS += -Dxv=enabled
MPV_DEPENDENCIES += xlib_libXv
else
-MPV_CONF_OPTS += --disable-xv
+MPV_CONF_OPTS += -Dxv=disabled
endif
else
-MPV_CONF_OPTS += --disable-x11
+MPV_CONF_OPTS += -Dx11=disabled
endif
ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y)
MPV_CONF_ENV += LDFLAGS="$(TARGET_LDFLAGS) -latomic"
endif
-$(eval $(waf-package))
+$(eval $(meson-package))
--
2.45.2
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [Buildroot] [PATCH 1/2] package/libplacebo: add libplacebo package
[not found] <20240719161557.8832-1-javad.rahimipetroudi__49989.5562579454$1721405789$gmane$org@mind.be>
@ 2024-08-02 6:01 ` Bernd Kuhls
0 siblings, 0 replies; 7+ messages in thread
From: Bernd Kuhls @ 2024-08-02 6:01 UTC (permalink / raw)
To: buildroot
Am Fri, 19 Jul 2024 18:15:56 +0200 schrieb Javad Rahimipetroudi via
buildroot:
> +LIBPLACEBO_SITE = https://github.com/haasn/libplacebo
> +LIBPLACEBO_SITE_METHOD = git
Hi Javad,
please use the official source:
LIBPLACEBO_SOURCE = libplacebo-v$(LIBPLACEBO_VERSION).tar.gz
LIBPLACEBO_SITE = https://code.videolan.org/videolan/libplacebo/-/archive/v$(LIBPLACEBO_VERSION)
Regards, Bernd
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Buildroot] [PATCH 1/2] package/libplacebo: add libplacebo package
2024-07-19 16:15 [Buildroot] [PATCH 1/2] package/libplacebo: add libplacebo package Javad Rahimipetroudi via buildroot
2024-07-19 16:15 ` [Buildroot] [PATCH 2/2] package/mpv: bump version to v0.38.0 Javad Rahimipetroudi via buildroot
@ 2024-10-22 4:15 ` Sen Hastings
1 sibling, 0 replies; 7+ messages in thread
From: Sen Hastings @ 2024-10-22 4:15 UTC (permalink / raw)
To: Javad Rahimipetroudi via buildroot; +Cc: buildroot
On Fri, Jul 19, 2024 at 06:15:56PM +0200, Javad Rahimipetroudi via buildroot wrote:
> This patch adds libplacebo package that is used
> by mpv player.
> libplacebo is the core rendering algorithms and
> ideas of mpv rewritten as an independent library
> and contains a large assortment of video processing
> shaders, focusing on both quality and performance.
>
Great, this works!
tested on: x86_64 with musl stable 2024.05-1 bootlin toolchain
I was thinking however: perhaps the package should live under "Multimedia"
instead of "Audio/Sound"?
> Signed-off-by: Javad Rahimipetroudi <javad.rahimipetroudi@mind.be>
Tested-by: Sen Hastings <sen@hastings.org>
> ---
> package/Config.in | 1 +
> ...ild-fix-linker-error-in-uclibc-sparc.patch | 45 +++++++++++++++++++
> ...h-add-static_assert-define-for-ulibc.patch | 36 +++++++++++++++
> package/libplacebo/Config.in | 18 ++++++++
> package/libplacebo/libplacebo.hash | 2 +
> package/libplacebo/libplacebo.mk | 15 +++++++
> 6 files changed, 117 insertions(+)
> create mode 100644 package/libplacebo/0001-meson.build-fix-linker-error-in-uclibc-sparc.patch
> create mode 100644 package/libplacebo/0002-src-pl_assert.h-add-static_assert-define-for-ulibc.patch
> create mode 100644 package/libplacebo/Config.in
> create mode 100644 package/libplacebo/libplacebo.hash
> create mode 100644 package/libplacebo/libplacebo.mk
>
> diff --git a/package/Config.in b/package/Config.in
> index f2e10b2b5e..1207001640 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -1509,6 +1509,7 @@ menu "Audio/Sound"
> source "package/libmodplug/Config.in"
> source "package/libmpdclient/Config.in"
> source "package/libopenmpt/Config.in"
> + source "package/libplacebo/Config.in"
> source "package/libreplaygain/Config.in"
> source "package/libsamplerate/Config.in"
> source "package/libsidplay2/Config.in"
> diff --git a/package/libplacebo/0001-meson.build-fix-linker-error-in-uclibc-sparc.patch b/package/libplacebo/0001-meson.build-fix-linker-error-in-uclibc-sparc.patch
> new file mode 100644
> index 0000000000..3056d28651
> --- /dev/null
> +++ b/package/libplacebo/0001-meson.build-fix-linker-error-in-uclibc-sparc.patch
> @@ -0,0 +1,45 @@
> +From 4386f3e3b3d02c55776e3f674d8447fd24388c2c Mon Sep 17 00:00:00 2001
> +From: Javad Rahimipetroudi <javad.rahimipetroudi@mind.be>
> +Date: Fri, 19 Jul 2024 07:02:48 +0200
> +Subject: [PATCH] meson.build: add libatomic dependency if needed
> +
> +This PR fixes the problem related to not finding the libatomic during the
> +build. Some combinations or architecture and libc (e.g. uClibc on SPARC)
> +operations in a separate library and don't link with it automatically.
> +An optional find_library to meson.build has been added to
> +discover this.
> +
> +
> +Fixes:
> + - https://github.com/haasn/libplacebo/issues/278
> +
> +Signed-off-by: Javad Rahimipetroudi <javad.rahimipetroudi@mind.be>
> +Upstream: https://github.com/haasn/libplacebo/commit/4386f3e3b3d02c55776e3f674d8447fd24388c2c
> +---
> + meson.build | 3 ++-
> + 1 file changed, 2 insertions(+), 1 deletion(-)
> +
> +diff --git a/meson.build b/meson.build
> +index a73e49ff..f8cbf9f1 100644
> +--- a/meson.build
> ++++ b/meson.build
> +@@ -448,6 +448,7 @@ add_project_link_arguments(link_args, language: ['c', 'cpp'])
> + # Global dependencies
> + fs = import('fs')
> + libm = cc.find_library('m', required: false)
> ++atomic = cc.find_library('atomic', required: false)
> + thirdparty = meson.project_source_root()/'3rdparty'
> + python = import('python').find_installation()
> + python_env = environment()
> +@@ -473,7 +474,7 @@ else
> + )
> + endif
> +
> +-build_deps = [ libm, threads ]
> ++build_deps = [ libm, threads, atomic]
> +
> + subdir('tools')
> + subdir('src')
> +--
> +2.45.2
> +
> diff --git a/package/libplacebo/0002-src-pl_assert.h-add-static_assert-define-for-ulibc.patch b/package/libplacebo/0002-src-pl_assert.h-add-static_assert-define-for-ulibc.patch
> new file mode 100644
> index 0000000000..6960c2f219
> --- /dev/null
> +++ b/package/libplacebo/0002-src-pl_assert.h-add-static_assert-define-for-ulibc.patch
> @@ -0,0 +1,36 @@
> +From 0182e2b94bbc6bb964f96527d18e93c9b4709a3a Mon Sep 17 00:00:00 2001
> +From: Javad Rahimipetroudi <javad.rahimipetroudi@mind.be>
> +Date: Fri, 19 Jul 2024 07:57:45 +0200
> +Subject: [PATCH] src/pl_assert.h:add static_assert define for ulibc
> +
> +This PR adds the static_assert macro defination for uClibc that is
> +missed in some platforms. However, it is limited to C versions lower
> +than C23. From C23, static_assert is not defined as macro anymore:
> +https://en.cppreference.com/w/c/language/_Static_assert
> +
> +Signed-off-by: Javad Rahimipetroudi <javad.rahimipetroudi@mind.be>
> +Upstream: https://github.com/haasn/libplacebo/commit/0182e2b94bbc6bb964f96527d18e93c9b4709a3a
> +---
> + src/pl_assert.h | 6 ++++++
> + 1 file changed, 6 insertions(+)
> +
> +diff --git a/src/pl_assert.h b/src/pl_assert.h
> +index b4c6656c..de9d3547 100644
> +--- a/src/pl_assert.h
> ++++ b/src/pl_assert.h
> +@@ -20,6 +20,12 @@
> + #include <stdio.h>
> + #include <assert.h>
> +
> ++#if !defined (__cplusplus)
> ++#if (__STDC_VERSION__ < 202301L)
> ++#define static_assert _Static_assert
> ++#endif
> ++#endif
> ++
> + #ifndef NDEBUG
> + # define pl_assert assert
> + #else
> +--
> +2.45.2
> +
> diff --git a/package/libplacebo/Config.in b/package/libplacebo/Config.in
> new file mode 100644
> index 0000000000..e2fc434248
> --- /dev/null
> +++ b/package/libplacebo/Config.in
> @@ -0,0 +1,18 @@
> +config BR2_PACKAGE_LIBPLACEBO
> + bool "libplacebo"
> + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
> + depends on BR2_INSTALL_LIBSTDCPP
> + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_10 #C++20
> + depends on BR2_TOOLCHAIN_HAS_ATOMIC
> + depends on !BR2_STATIC_LIBS # needs <dlfcn.h>
> +
> + help
> + libplacebo is, in a nutshell, the core rendering
> + algorithms and ideas of mpv rewritten as an
> + independent library. As of today, libplacebo
> + contains a large assortment of video processing
> + shaders, focusing on both quality and performance.
> +
> +comment "libplacebo needs a toolchain w/ dynamic library, threads, and dynamic loading"
> + depends on BR2_USE_MMU
> + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS
> diff --git a/package/libplacebo/libplacebo.hash b/package/libplacebo/libplacebo.hash
> new file mode 100644
> index 0000000000..d1588a608b
> --- /dev/null
> +++ b/package/libplacebo/libplacebo.hash
> @@ -0,0 +1,2 @@
> +sha256 afaaf16668a1dfaa5f5bf7329713d0dd89cf2ca0dbe7c68aeea894d333e2503e libplacebo-v7.349.0-git4.tar.gz
> +sha256 b3aa400aca6d2ba1f0bd03bd98d03d1fe7489a3bbb26969d72016360af8a5c9d LICENSE
> diff --git a/package/libplacebo/libplacebo.mk b/package/libplacebo/libplacebo.mk
> new file mode 100644
> index 0000000000..ae3cb68022
> --- /dev/null
> +++ b/package/libplacebo/libplacebo.mk
> @@ -0,0 +1,15 @@
> +################################################################################
> +#
> +# libplacebo
> +#
> +################################################################################
> +
> +LIBPLACEBO_VERSION = v7.349.0
> +LIBPLACEBO_SITE = https://github.com/haasn/libplacebo
> +LIBPLACEBO_SITE_METHOD = git
> +LIBPLACEBO_GIT_SUBMODULES = YES
> +LIBPLACEBO_LICENSE = LGPL-2.1
> +LIBPLACEBO_LICENSE_FILES = LICENSE
> +LIBPLACEBO_INSTALL_STAGING = YES
> +
> +$(eval $(meson-package))
> --
> 2.45.2
>
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Buildroot] [PATCH 2/2] package/mpv: bump version to v0.38.0
2024-07-19 16:15 ` [Buildroot] [PATCH 2/2] package/mpv: bump version to v0.38.0 Javad Rahimipetroudi via buildroot
@ 2025-05-16 16:59 ` Arnout Vandecappelle via buildroot
0 siblings, 0 replies; 7+ messages in thread
From: Arnout Vandecappelle via buildroot @ 2025-05-16 16:59 UTC (permalink / raw)
To: Javad Rahimipetroudi, buildroot; +Cc: Javad Rahimipetroudi
On 19/07/2024 18:15, Javad Rahimipetroudi via buildroot wrote:
> ifeq ($(BR2_PACKAGE_RPI_USERLAND),y)
> -MPV_CONF_OPTS += --enable-rpi --enable-gl
> +#MPV_CONF_OPTS += -Drpi=enabled -Dgl=enabled
> MPV_DEPENDENCIES += rpi-userland
> -else
> -MPV_CONF_OPTS += --disable-rpi
> +#else
> +#MPV_CONF_OPTS += -Drpi=disabled
You shouldn't have this commented-out stuff. In meson, if -Drpi=enabled
exists, than -Drpi=disabled _must_ also exist, so why is this commented out?
BTW I've marked both as Changes Requested in patchwork.
Regards,
Arnout
> endif
>
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Buildroot] [PATCH 1/2] package/libplacebo: add libplacebo package
@ 2025-10-03 14:30 Bernd Kuhls
2026-01-01 16:31 ` Thomas Petazzoni via buildroot
0 siblings, 1 reply; 7+ messages in thread
From: Bernd Kuhls @ 2025-10-03 14:30 UTC (permalink / raw)
To: buildroot
Cc: Bernd Kuhls, Eric Le Bihan, Mahyar Koshkouei,
Javad Rahimipetroudi, Javad Rahimipetroudi, Sen Hastings
From: Javad Rahimipetroudi <javad.rahimipetroudi@essensium.com>
This patch adds libplacebo package that is used
by mpv player.
libplacebo is the core rendering algorithms and
ideas of mpv rewritten as an independent library
and contains a large assortment of video processing
shaders, focusing on both quality and performance.
Signed-off-by: Javad Rahimipetroudi <javad.rahimipetroudi@mind.be>
Tested-by: Sen Hastings <sen@hastings.org>
[Bernd:
- bumped to v7.351.0
- moved Kconfig option to Multimedia (Sen)
- rebased patch 0001 after version bump
- added project URL to Config.in helptext
- removed redundancy in Config.in comment
- added comment to hash file
- switched _SITE to official repo
- added patch to fix build error with latest python3]
Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
---
DEVELOPERS | 1 +
package/Config.in | 1 +
...ild-fix-linker-error-in-uclibc-sparc.patch | 45 +++++++++++++++++++
...h-add-static_assert-define-for-ulibc.patch | 36 +++++++++++++++
...vulkan-utils_gen-fix-for-python-3.14.patch | 31 +++++++++++++
package/libplacebo/Config.in | 20 +++++++++
package/libplacebo/libplacebo.hash | 3 ++
package/libplacebo/libplacebo.mk | 15 +++++++
8 files changed, 152 insertions(+)
create mode 100644 package/libplacebo/0001-meson.build-fix-linker-error-in-uclibc-sparc.patch
create mode 100644 package/libplacebo/0002-src-pl_assert.h-add-static_assert-define-for-ulibc.patch
create mode 100644 package/libplacebo/0003-vulkan-utils_gen-fix-for-python-3.14.patch
create mode 100644 package/libplacebo/Config.in
create mode 100644 package/libplacebo/libplacebo.hash
create mode 100644 package/libplacebo/libplacebo.mk
diff --git a/DEVELOPERS b/DEVELOPERS
index c2c867263a..b4bcda651c 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -428,6 +428,7 @@ F: package/libnpth/
F: package/libogg/
F: package/libopenh264/
F: package/libpciaccess/
+F: package/libplacebo/
F: package/libplatform/
F: package/libpng/
F: package/libsidplay2/
diff --git a/package/Config.in b/package/Config.in
index acc1c8258b..a88f254be5 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1993,6 +1993,7 @@ menu "Multimedia"
source "package/libopenaptx/Config.in"
source "package/libopenh264/Config.in"
source "package/libopusenc/Config.in"
+ source "package/libplacebo/Config.in"
source "package/libtheora/Config.in"
source "package/libudfread/Config.in"
source "package/libvpx/Config.in"
diff --git a/package/libplacebo/0001-meson.build-fix-linker-error-in-uclibc-sparc.patch b/package/libplacebo/0001-meson.build-fix-linker-error-in-uclibc-sparc.patch
new file mode 100644
index 0000000000..795a1ae3e5
--- /dev/null
+++ b/package/libplacebo/0001-meson.build-fix-linker-error-in-uclibc-sparc.patch
@@ -0,0 +1,45 @@
+From 4386f3e3b3d02c55776e3f674d8447fd24388c2c Mon Sep 17 00:00:00 2001
+From: Javad Rahimipetroudi <javad.rahimipetroudi@mind.be>
+Date: Fri, 19 Jul 2024 07:02:48 +0200
+Subject: [PATCH] meson.build: add libatomic dependency if needed
+
+This PR fixes the problem related to not finding the libatomic during the
+build. Some combinations or architecture and libc (e.g. uClibc on SPARC)
+operations in a separate library and don't link with it automatically.
+An optional find_library to meson.build has been added to
+discover this.
+
+
+Fixes:
+ - https://github.com/haasn/libplacebo/issues/278
+
+Signed-off-by: Javad Rahimipetroudi <javad.rahimipetroudi@mind.be>
+Upstream: https://github.com/haasn/libplacebo/commit/4386f3e3b3d02c55776e3f674d8447fd24388c2c
+---
+ meson.build | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index a73e49ff..f8cbf9f1 100644
+--- a/meson.build
++++ b/meson.build
+@@ -450,6 +450,7 @@ add_project_link_arguments(link_args, language: ['c', 'cpp'])
+ # Global dependencies
+ fs = import('fs')
+ libm = cc.find_library('m', required: false)
++atomic = cc.find_library('atomic', required: false)
+ thirdparty = meson.project_source_root()/'3rdparty'
+ python = import('python').find_installation()
+ python_env = environment()
+@@ -475,7 +476,7 @@ else
+ )
+ endif
+
+-build_deps = [ libm, threads ]
++build_deps = [ libm, threads, atomic]
+
+ subdir('tools')
+ subdir('src')
+--
+2.45.2
+
diff --git a/package/libplacebo/0002-src-pl_assert.h-add-static_assert-define-for-ulibc.patch b/package/libplacebo/0002-src-pl_assert.h-add-static_assert-define-for-ulibc.patch
new file mode 100644
index 0000000000..6960c2f219
--- /dev/null
+++ b/package/libplacebo/0002-src-pl_assert.h-add-static_assert-define-for-ulibc.patch
@@ -0,0 +1,36 @@
+From 0182e2b94bbc6bb964f96527d18e93c9b4709a3a Mon Sep 17 00:00:00 2001
+From: Javad Rahimipetroudi <javad.rahimipetroudi@mind.be>
+Date: Fri, 19 Jul 2024 07:57:45 +0200
+Subject: [PATCH] src/pl_assert.h:add static_assert define for ulibc
+
+This PR adds the static_assert macro defination for uClibc that is
+missed in some platforms. However, it is limited to C versions lower
+than C23. From C23, static_assert is not defined as macro anymore:
+https://en.cppreference.com/w/c/language/_Static_assert
+
+Signed-off-by: Javad Rahimipetroudi <javad.rahimipetroudi@mind.be>
+Upstream: https://github.com/haasn/libplacebo/commit/0182e2b94bbc6bb964f96527d18e93c9b4709a3a
+---
+ src/pl_assert.h | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/pl_assert.h b/src/pl_assert.h
+index b4c6656c..de9d3547 100644
+--- a/src/pl_assert.h
++++ b/src/pl_assert.h
+@@ -20,6 +20,12 @@
+ #include <stdio.h>
+ #include <assert.h>
+
++#if !defined (__cplusplus)
++#if (__STDC_VERSION__ < 202301L)
++#define static_assert _Static_assert
++#endif
++#endif
++
+ #ifndef NDEBUG
+ # define pl_assert assert
+ #else
+--
+2.45.2
+
diff --git a/package/libplacebo/0003-vulkan-utils_gen-fix-for-python-3.14.patch b/package/libplacebo/0003-vulkan-utils_gen-fix-for-python-3.14.patch
new file mode 100644
index 0000000000..86f7c00856
--- /dev/null
+++ b/package/libplacebo/0003-vulkan-utils_gen-fix-for-python-3.14.patch
@@ -0,0 +1,31 @@
+From a22f0dff5fe89385155743a1735b146babfdb131 Mon Sep 17 00:00:00 2001
+From: Nicolas Chauvet <kwizart@gmail.com>
+Date: Tue, 29 Jul 2025 11:42:35 +0200
+Subject: [PATCH] vulkan/utils_gen: fix for python 3.14
+
+Python 3.14+ has added more type checking. This patch fixes usage
+
+Fixes: https://github.com/haasn/libplacebo/issues/335
+
+Upstream: https://code.videolan.org/videolan/libplacebo/-/commit/12509c0f1ee8c22ae163017f0a5e7b8a9d983a17
+
+Signed-off-by: Nicolas Chauvet <kwizart@gmail.com>
+Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
+---
+ src/vulkan/utils_gen.py | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/vulkan/utils_gen.py b/src/vulkan/utils_gen.py
+index 9a97d35f..9b803d82 100644
+--- a/src/vulkan/utils_gen.py
++++ b/src/vulkan/utils_gen.py
+@@ -202,7 +202,8 @@ def find_registry_xml(datadir):
+ if not xmlfile or xmlfile == '':
+ xmlfile = find_registry_xml(datadir)
+
+- registry = VkXML(ET.parse(xmlfile))
++ tree = ET.parse(xmlfile)
++ registry = VkXML(tree.getroot())
+ with open(outfile, 'w') as f:
+ f.write(TEMPLATE.render(
+ vkresults = get_vkenum(registry, 'VkResult'),
diff --git a/package/libplacebo/Config.in b/package/libplacebo/Config.in
new file mode 100644
index 0000000000..739de5c05c
--- /dev/null
+++ b/package/libplacebo/Config.in
@@ -0,0 +1,20 @@
+config BR2_PACKAGE_LIBPLACEBO
+ bool "libplacebo"
+ depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
+ depends on BR2_INSTALL_LIBSTDCPP
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_10 # C++20
+ depends on BR2_TOOLCHAIN_HAS_ATOMIC
+ depends on !BR2_STATIC_LIBS # needs <dlfcn.h>
+ help
+ libplacebo is, in a nutshell, the core rendering
+ algorithms and ideas of mpv rewritten as an
+ independent library. As of today, libplacebo
+ contains a large assortment of video processing
+ shaders, focusing on both quality and performance.
+
+ https://libplacebo.org
+
+comment "libplacebo needs a toolchain w/ dynamic library, threads, gcc >= 10"
+ depends on BR2_USE_MMU
+ depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS || \
+ !BR2_TOOLCHAIN_GCC_AT_LEAST_10
diff --git a/package/libplacebo/libplacebo.hash b/package/libplacebo/libplacebo.hash
new file mode 100644
index 0000000000..302afcca16
--- /dev/null
+++ b/package/libplacebo/libplacebo.hash
@@ -0,0 +1,3 @@
+# Locally computed
+sha256 46b501842e5b18867c6b7dd5c901e65ad6396608ad76309c366d8ace8be0d0d7 libplacebo-v7.351.0-git4.tar.gz
+sha256 b3aa400aca6d2ba1f0bd03bd98d03d1fe7489a3bbb26969d72016360af8a5c9d LICENSE
diff --git a/package/libplacebo/libplacebo.mk b/package/libplacebo/libplacebo.mk
new file mode 100644
index 0000000000..67bf0f00fb
--- /dev/null
+++ b/package/libplacebo/libplacebo.mk
@@ -0,0 +1,15 @@
+################################################################################
+#
+# libplacebo
+#
+################################################################################
+
+LIBPLACEBO_VERSION = v7.351.0
+LIBPLACEBO_SITE = https://code.videolan.org/videolan/libplacebo.git
+LIBPLACEBO_SITE_METHOD = git
+LIBPLACEBO_GIT_SUBMODULES = YES
+LIBPLACEBO_LICENSE = LGPL-2.1
+LIBPLACEBO_LICENSE_FILES = LICENSE
+LIBPLACEBO_INSTALL_STAGING = YES
+
+$(eval $(meson-package))
--
2.47.3
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [Buildroot] [PATCH 1/2] package/libplacebo: add libplacebo package
2025-10-03 14:30 Bernd Kuhls
@ 2026-01-01 16:31 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 7+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-01-01 16:31 UTC (permalink / raw)
To: Bernd Kuhls
Cc: buildroot, Eric Le Bihan, Mahyar Koshkouei, Javad Rahimipetroudi,
Javad Rahimipetroudi, Sen Hastings
Hello,
On Fri, 3 Oct 2025 16:30:42 +0200
Bernd Kuhls <bernd@kuhls.net> wrote:
> From: Javad Rahimipetroudi <javad.rahimipetroudi@essensium.com>
>
> This patch adds libplacebo package that is used
> by mpv player.
> libplacebo is the core rendering algorithms and
> ideas of mpv rewritten as an independent library
> and contains a large assortment of video processing
> shaders, focusing on both quality and performance.
>
> Signed-off-by: Javad Rahimipetroudi <javad.rahimipetroudi@mind.be>
[...]
Thanks for the patch, I've applied, after doing a few tweaks.
> diff --git a/package/libplacebo/Config.in b/package/libplacebo/Config.in
> new file mode 100644
> index 0000000000..739de5c05c
> --- /dev/null
> +++ b/package/libplacebo/Config.in
> @@ -0,0 +1,20 @@
> +config BR2_PACKAGE_LIBPLACEBO
> + bool "libplacebo"
> + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
> + depends on BR2_INSTALL_LIBSTDCPP
> + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_10 # C++20
> + depends on BR2_TOOLCHAIN_HAS_ATOMIC
> + depends on !BR2_STATIC_LIBS # needs <dlfcn.h>
> + help
> + libplacebo is, in a nutshell, the core rendering
> + algorithms and ideas of mpv rewritten as an
> + independent library. As of today, libplacebo
> + contains a large assortment of video processing
> + shaders, focusing on both quality and performance.
Lines were a bit too short, rewrapped.
> +
> + https://libplacebo.org
> +
> +comment "libplacebo needs a toolchain w/ dynamic library, threads, gcc >= 10"
> + depends on BR2_USE_MMU
> + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS || \
> + !BR2_TOOLCHAIN_GCC_AT_LEAST_10
This comment didn't match the actual dependencies.
Thanks!
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2026-01-01 16:31 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-19 16:15 [Buildroot] [PATCH 1/2] package/libplacebo: add libplacebo package Javad Rahimipetroudi via buildroot
2024-07-19 16:15 ` [Buildroot] [PATCH 2/2] package/mpv: bump version to v0.38.0 Javad Rahimipetroudi via buildroot
2025-05-16 16:59 ` Arnout Vandecappelle via buildroot
2024-10-22 4:15 ` [Buildroot] [PATCH 1/2] package/libplacebo: add libplacebo package Sen Hastings
[not found] <20240719161557.8832-1-javad.rahimipetroudi__49989.5562579454$1721405789$gmane$org@mind.be>
2024-08-02 6:01 ` Bernd Kuhls
-- strict thread matches above, loose matches on Subject: below --
2025-10-03 14:30 Bernd Kuhls
2026-01-01 16:31 ` Thomas Petazzoni via buildroot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox