commit: 4b51621fadb89d2821aa79b90865f44e8f92ef6b
Author: Patrick Nicolas <patricknicolas <AT> laposte <DOT> net>
AuthorDate: Sat Mar 30 22:32:20 2024 +0000
Commit: Julien Roy <julien <AT> jroy <DOT> ca>
CommitDate: Sat Mar 30 22:32:20 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=4b51621f
media-libs/wivrn: add 0.13
Signed-off-by: Patrick Nicolas <patricknicolas <AT> laposte.net>
media-libs/wivrn/Manifest | 2 +
media-libs/wivrn/metadata.xml | 6 ++
media-libs/wivrn/wivrn-0.13.ebuild | 113 +++++++++++++++++++++++++++++++++++++
3 files changed, 121 insertions(+)
diff --git a/media-libs/wivrn/Manifest b/media-libs/wivrn/Manifest
index 15d6e248b4..95ca1b9478 100644
--- a/media-libs/wivrn/Manifest
+++ b/media-libs/wivrn/Manifest
@@ -2,3 +2,5 @@ DIST boostpfr_2.2.0.tar.gz 76432 BLAKE2B
70d76a5dd0034f93ff1749b1994bcd9cd8a9b09
DIST monado-ffb71af26f8349952f5f820c268ee4774613e200.tar.gz 3345606 BLAKE2B
dc38514da7757e9737303540ca44d698e7eef504136fe7d4fbac349588a14be6860890f43520a52e1e80dfcaea32bc1f3a95894280c0fb8b178b50ffd85e155b
SHA512
fbbee78583a8c90dc8e4179b8b3febaad77268c2f293532c1379e2c15d15693aea4b5494b6e34e1bd9f53d7624d7c9a93a8a5d514c1fcb474153b850c322166b
DIST wivrn-0.12-server-build-deps.tar.xz 16661132 BLAKE2B
e7d562a286211d674bfbdd3db8328e8fc4e019893d73067174abacc7ba95127b92b0faba589a5fddbbc06baf3a1057f54f739130daa5db745f18db0541c8d887
SHA512
57d7e99a98a7d41bcb88302247312e99e0ddc89023b06bb8028711967d1a148bcba4f06343d55510fdb294a87fde56733dcd493b80f3f136c325568ba08e2798
DIST wivrn-0.12.tar.gz 11683876 BLAKE2B
34000761291ff7c9565b8ffddd87e1721adbf78447bc875f4c805643f284443765404f186f95747f314571b26ebe57fd5a1275258f65bb9a479a61b4623db0fc
SHA512
960cd6282c9538bd574f11c51dc7e4f6f87b2b619b68d7eb3a0ab8edde14a27e6b4f4535ef45b5f32396bd8a5a8c9d1cc28bed910e9eb71fdbfefeea6ec3dbd7
+DIST wivrn-0.13-server-build-deps.tar.xz 15527480 BLAKE2B
28dfedaee675a2acc3fa3b453837a31c91d613d7a1166c14d398f0093a5faa6ad6d5d6112ce2c41863894fcaa0ce98d83d6bf2d9289c5fa263a09b92e99c9f0c
SHA512
9d9a9add87dca9ebba593d889297caf8a5dfe7d48cd3abd7e02859392ee21af7635f82dba00198637a237be5e5905e2c3af469f621adbe44697176e7c15fc49c
+DIST wivrn-0.13.tar.gz 11826609 BLAKE2B
8b8cd300998bb05803fa8c6f1f5e874f7435edf5f457c5806e1e75e5a16b2a749208567162b41af6d4dda3f83b8c40ce9367b123522cc9cb023a8ec33be24a06
SHA512
82efdd29368a00c191eea32716a7a69b80108fa7f3521c548c80df156bb0ee3c6dad8a24488707ea083ae9121b9b6efe1d31a9af77367403583ecba25e3e3104
diff --git a/media-libs/wivrn/metadata.xml b/media-libs/wivrn/metadata.xml
index c7c2506ce5..43737e5e73 100644
--- a/media-libs/wivrn/metadata.xml
+++ b/media-libs/wivrn/metadata.xml
@@ -6,6 +6,12 @@
<name>Patrick Nicolas</name>
</maintainer>
<use>
+ <flag name="pipewire">
+ Enable support for audio sink/source through native
pipewire protocol
+ </flag>
+ <flag name="pulseaudio">
+ Enable support for audio sink/source through pulseaudio
modules
+ </flag>
<flag name="wireshark-plugins">
Build the <pkg>net-analyzer/wireshark</pkg> plugin for
the WiVRn protocol
</flag>
diff --git a/media-libs/wivrn/wivrn-0.13.ebuild
b/media-libs/wivrn/wivrn-0.13.ebuild
new file mode 100644
index 0000000000..a6e984eabb
--- /dev/null
+++ b/media-libs/wivrn/wivrn-0.13.ebuild
@@ -0,0 +1,113 @@
+EAPI=7
+
+DESCRIPTION="WiVRn OpenXR streaming"
+HOMEPAGE="https://github.com/meumeu/WiVRn"
+SLOT="0"
+LICENSE="GPL-3 Apache-2.0 MIT"
+
+IUSE="nvenc pipewire pulseaudio systemd vaapi wireshark-plugins x264"
+REQUIRED_USE="|| ( nvenc vaapi x264 )"
+
+inherit cmake
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/Meumeu/WiVRn.git"
+ EGIT_BRANCH="dev"
+
+ MONADO_V=ffb71af26f8349952f5f820c268ee4774613e200
+ PFR_V=2.2.0
+ SRC_URI="
+ https://github.com/boostorg/pfr/archive/refs/tags/${PFR_V}.tar.gz ->
boostpfr_${PFR_V}.tar.gz
+
https://gitlab.freedesktop.org/monado/monado/-/archive/${MONADO_V}/monado-${MONADO_V}.tar.gz"
+else
+ SRC_URI="
+ https://github.com/Meumeu/WiVRn/archive/refs/tags/v${PV}.tar.gz
-> ${P}.tar.gz
+
https://github.com/Meumeu/WiVRn/releases/download/v${PV}/server-build-deps.tar.xz
-> ${P}-server-build-deps.tar.xz"
+ KEYWORDS="~amd64"
+fi
+
+RDEPEND="
+ nvenc? (
+ x11-drivers/nvidia-drivers
+ )
+ vaapi? (
+ media-video/ffmpeg[libdrm,vaapi]
+ )
+ x264? (
+ media-libs/x264
+ )
+ dev-libs/libbsd
+ pipewire? (
+ media-video/pipewire
+ )
+ pulseaudio? (
+ media-libs/libpulse
+ )
+ media-libs/openxr-loader
+ net-dns/avahi
+ systemd? (
+ sys-apps/systemd
+ )
+ wireshark-plugins? (
+ net-analyzer/wireshark
+ )
+"
+
+BDEPEND="
+ ${RDEPEND}
+ nvenc? (
+ dev-util/nvidia-cuda-toolkit
+ )
+ dev-cpp/eigen
+ dev-cpp/nlohmann_json
+ dev-util/glslang
+"
+
+if [[ ${PV} == 9999 ]]; then
+ src_unpack() {
+ git-r3_src_unpack
+ default_src_unpack
+ cd "${WORKDIR}"
+ mv "monado-${MONADO_V}" "monado-src"
+ mv "pfr-${PFR_V}" "boostpfr-src"
+ }
+else
+ src_unpack() {
+ default_src_unpack
+ cd "${WORKDIR}"
+ mv "WiVRn-${PV}" "${P}"
+ }
+fi
+
+src_configure() {
+ if [[ ${PV} == 9999 ]]; then
+ GIT_DESC=$(git describe)
+ else
+ GIT_DESC=${PV}
+ fi
+ local mycmakeargs=(
+ -DGIT_DESC=${GIT_DESC}
+ -DWIVRN_BUILD_CLIENT=OFF
+ -DWIVRN_BUILD_SERVER=ON
+ -DWIVRN_BUILD_DISSECTOR=$(usex wireshark-plugins)
+ -DWIVRN_USE_PIPEWIRE=$(usex pipewire)
+ -DWIVRN_USE_PULSEAUDIO=$(usex pulseaudio)
+ -DWIVRN_USE_NVENC=$(usex nvenc)
+ -DWIVRN_USE_VAAPI=$(usex vaapi)
+ -DWIVRN_USE_X264=$(usex x264)
+ -DWIVRN_USE_SYSTEMD=$(usex systemd)
+ -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON
+ -DFETCHCONTENT_FULLY_DISCONNECTED=ON
+ -DFETCHCONTENT_BASE_DIR=${WORKDIR}
+ -DENABLE_COLOURED_OUTPUT=OFF
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ dosym /usr/share/openxr/1/openxr_wivrn.json
/etc/openxr/1/active_runtime.json
+}