1 |
commit: e83d63df26c90d786e09ef271b8a51f0c66db3a7 |
2 |
Author: Ionen Wolkens <ionen <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sun Nov 6 14:25:38 2022 +0000 |
4 |
Commit: Ionen Wolkens <ionen <AT> gentoo <DOT> org> |
5 |
CommitDate: Mon Nov 7 19:27:57 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e83d63df |
7 |
|
8 |
media-libs/libplacebo: sync live |
9 |
|
10 |
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org> |
11 |
|
12 |
media-libs/libplacebo/libplacebo-9999.ebuild | 93 +++++++++++++++++----------- |
13 |
1 file changed, 56 insertions(+), 37 deletions(-) |
14 |
|
15 |
diff --git a/media-libs/libplacebo/libplacebo-9999.ebuild b/media-libs/libplacebo/libplacebo-9999.ebuild |
16 |
index 72d2114b55cb..305607263956 100644 |
17 |
--- a/media-libs/libplacebo/libplacebo-9999.ebuild |
18 |
+++ b/media-libs/libplacebo/libplacebo-9999.ebuild |
19 |
@@ -1,72 +1,91 @@ |
20 |
# Copyright 1999-2022 Gentoo Authors |
21 |
# Distributed under the terms of the GNU General Public License v2 |
22 |
|
23 |
-EAPI=7 |
24 |
+EAPI=8 |
25 |
|
26 |
-PYTHON_REQ_USE="xml(+)" |
27 |
-PYTHON_COMPAT=( python3_{8..10} ) |
28 |
+PYTHON_COMPAT=( python3_{8..11} ) |
29 |
+inherit meson-multilib python-any-r1 |
30 |
|
31 |
-if [[ "${PV}" == "9999" ]]; then |
32 |
+if [[ ${PV} == 9999 ]]; then |
33 |
EGIT_REPO_URI="https://code.videolan.org/videolan/libplacebo.git" |
34 |
inherit git-r3 |
35 |
else |
36 |
- KEYWORDS="~amd64 ~ppc64 ~x86" |
37 |
- SRC_URI="https://code.videolan.org/videolan/libplacebo/-/archive/v${PV}/libplacebo-v${PV}.tar.gz" |
38 |
+ GLAD_PV=2.0.2 |
39 |
+ SRC_URI=" |
40 |
+ https://code.videolan.org/videolan/libplacebo/-/archive/v${PV}/libplacebo-v${PV}.tar.gz |
41 |
+ opengl? ( https://github.com/Dav1dde/glad/archive/refs/tags/v${GLAD_PV}.tar.gz -> ${PN}-glad-${GLAD_PV}.tar.gz )" |
42 |
S="${WORKDIR}/${PN}-v${PV}" |
43 |
+ KEYWORDS="~amd64 ~ppc64 ~x86" |
44 |
fi |
45 |
|
46 |
-inherit meson-multilib python-any-r1 |
47 |
- |
48 |
DESCRIPTION="Reusable library for GPU-accelerated image processing primitives" |
49 |
-HOMEPAGE="https://code.videolan.org/videolan/libplacebo" |
50 |
+HOMEPAGE="https://code.videolan.org/videolan/libplacebo/" |
51 |
|
52 |
-LICENSE="LGPL-2.1+" |
53 |
-# Please add a sub-slot for releases depending on libplacebo.so version |
54 |
-SLOT="0/9999" |
55 |
-IUSE="glslang lcms +opengl +shaderc test unwind +vulkan" |
56 |
-REQUIRED_USE="vulkan? ( || ( glslang shaderc ) )" |
57 |
+LICENSE="LGPL-2.1+ opengl? ( MIT )" |
58 |
+SLOT="0/$(ver_cut 2 ${PV}.9999)" # soname |
59 |
+IUSE="glslang lcms llvm-libunwind +opengl +shaderc test unwind +vulkan" |
60 |
RESTRICT="!test? ( test )" |
61 |
+REQUIRED_USE="vulkan? ( || ( glslang shaderc ) )" |
62 |
|
63 |
-RDEPEND="glslang? ( dev-util/glslang[${MULTILIB_USEDEP}] ) |
64 |
+# libglvnd is used with dlopen() through glad (inc. egl/gles) |
65 |
+RDEPEND=" |
66 |
lcms? ( media-libs/lcms:2[${MULTILIB_USEDEP}] ) |
67 |
- opengl? ( media-libs/libepoxy[${MULTILIB_USEDEP}] ) |
68 |
- shaderc? ( >=media-libs/shaderc-2017.2[${MULTILIB_USEDEP}] ) |
69 |
- unwind? ( sys-libs/libunwind:= ) |
70 |
- vulkan? ( |
71 |
- dev-util/vulkan-headers |
72 |
- media-libs/vulkan-loader[${MULTILIB_USEDEP}] |
73 |
- )" |
74 |
-DEPEND="${RDEPEND}" |
75 |
+ opengl? ( media-libs/libglvnd[${MULTILIB_USEDEP}] ) |
76 |
+ shaderc? ( media-libs/shaderc[${MULTILIB_USEDEP}] ) |
77 |
+ !shaderc? ( glslang? ( dev-util/glslang:=[${MULTILIB_USEDEP}] ) ) |
78 |
+ unwind? ( |
79 |
+ llvm-libunwind? ( sys-libs/llvm-libunwind[${MULTILIB_USEDEP}] ) |
80 |
+ !llvm-libunwind? ( sys-libs/libunwind:=[${MULTILIB_USEDEP}] ) |
81 |
+ ) |
82 |
+ vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] )" |
83 |
+DEPEND=" |
84 |
+ ${RDEPEND} |
85 |
+ vulkan? ( dev-util/vulkan-headers )" |
86 |
+BDEPEND=" |
87 |
+ virtual/pkgconfig |
88 |
+ vulkan? ( $(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]') )" |
89 |
|
90 |
-BDEPEND="virtual/pkgconfig |
91 |
- vulkan? ( |
92 |
- ${PYTHON_DEPS} |
93 |
- $(python_gen_any_dep 'dev-python/mako[${PYTHON_USEDEP}]') |
94 |
- )" |
95 |
+PATCHES=( |
96 |
+ "${FILESDIR}"/${PN}-5.229.1-llvm-libunwind.patch |
97 |
+ "${FILESDIR}"/${PN}-5.229.1-python-executable.patch |
98 |
+ "${FILESDIR}"/${PN}-5.229.1-shared-glslang.patch |
99 |
+) |
100 |
|
101 |
python_check_deps() { |
102 |
- has_version -b "dev-python/mako[${PYTHON_USEDEP}]" |
103 |
+ python_has_version "dev-python/jinja[${PYTHON_USEDEP}]" |
104 |
} |
105 |
|
106 |
pkg_setup() { |
107 |
use vulkan && python-any-r1_pkg_setup |
108 |
} |
109 |
|
110 |
+src_unpack() { |
111 |
+ if [[ ${PV} == 9999 ]]; then |
112 |
+ local EGIT_SUBMODULES=( $(usev opengl 3rdparty/glad) ) |
113 |
+ git-r3_src_unpack |
114 |
+ else |
115 |
+ default |
116 |
+ if use opengl; then |
117 |
+ rmdir "${S}"/3rdparty/glad || die |
118 |
+ mv glad-${GLAD_PV} "${S}"/3rdparty/glad || die |
119 |
+ fi |
120 |
+ fi |
121 |
+} |
122 |
+ |
123 |
multilib_src_configure() { |
124 |
local emesonargs=( |
125 |
- $(meson_feature glslang) |
126 |
+ -Ddemos=false #851927 |
127 |
+ $(meson_use test tests) |
128 |
$(meson_feature lcms) |
129 |
$(meson_feature opengl) |
130 |
+ $(meson_feature opengl gl-proc-addr) |
131 |
$(meson_feature shaderc) |
132 |
+ $(usex shaderc -Dglslang=disabled $(meson_feature glslang)) |
133 |
$(meson_feature unwind) |
134 |
$(meson_feature vulkan) |
135 |
- $(meson_use test tests) |
136 |
- # hard-code path from dev-util/vulkan-headers |
137 |
- -Dvulkan-registry=/usr/share/vulkan/registry/vk.xml |
138 |
+ $(meson_feature vulkan vk-proc-addr) |
139 |
+ -Dvulkan-registry="${ESYSROOT}"/usr/share/vulkan/registry/vk.xml |
140 |
) |
141 |
- meson_src_configure |
142 |
-} |
143 |
|
144 |
-multilib_src_test() { |
145 |
- meson_src_test -t 10 |
146 |
+ meson_src_configure |
147 |
} |