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
+}

Reply via email to