commit:     2b156da89fdf2447885882a7a90dd167394dfbd6
Author:     Patrick Nicolas <patricknicolas <AT> laposte <DOT> net>
AuthorDate: Mon Jun 10 08:45:54 2024 +0000
Commit:     Patrick Nicolas <patricknicolas <AT> laposte <DOT> net>
CommitDate: Mon Jun 10 08:46:51 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=2b156da8

media-libs/opencomposite: new package, add 9999

Signed-off-by: Patrick Nicolas <patricknicolas <AT> laposte.net>

 .../files/0001-Add-install-target.patch            | 19 ++++++++
 media-libs/opencomposite/files/openvrpaths.vrpath  |  4 ++
 media-libs/opencomposite/metadata.xml              | 11 +++++
 media-libs/opencomposite/opencomposite-9999.ebuild | 57 ++++++++++++++++++++++
 4 files changed, 91 insertions(+)

diff --git a/media-libs/opencomposite/files/0001-Add-install-target.patch 
b/media-libs/opencomposite/files/0001-Add-install-target.patch
new file mode 100644
index 000000000..d4f5d7b00
--- /dev/null
+++ b/media-libs/opencomposite/files/0001-Add-install-target.patch
@@ -0,0 +1,19 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 5956a67..3f0fda1 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -528,3 +528,11 @@ set_target_properties(OCOVR PROPERTIES
+ get_target_property(output_dir OCOVR LIBRARY_OUTPUT_DIRECTORY)
+ add_custom_command(TARGET OCOVR
+       PRE_LINK COMMAND ${CMAKE_COMMAND} -E make_directory ${output_dir})
++
++# Installation
++include(GNUInstallDirs)
++install(TARGETS OCOVR
++      LIBRARY
++      DESTINATION "${PROJECT_NAME}/${VRCLIENT_DIR}"
++      COMPONENT Runtime
++)
+-- 
+2.45.2
+

diff --git a/media-libs/opencomposite/files/openvrpaths.vrpath 
b/media-libs/opencomposite/files/openvrpaths.vrpath
new file mode 100644
index 000000000..89991d9bf
--- /dev/null
+++ b/media-libs/opencomposite/files/openvrpaths.vrpath
@@ -0,0 +1,4 @@
+{
+       "runtime" :  ["/opt/OpenComposite"],
+       "version" : 1
+}

diff --git a/media-libs/opencomposite/metadata.xml 
b/media-libs/opencomposite/metadata.xml
new file mode 100644
index 000000000..ecba23c2d
--- /dev/null
+++ b/media-libs/opencomposite/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <maintainer type="person">
+               <email>patricknico...@laposte.net</email>
+               <name>Patrick Nicolas</name>
+       </maintainer>
+       <upstream>
+                       <remote-id type="gitlab">znixian/OpenOVR</remote-id>
+       </upstream>
+</pkgmetadata>

diff --git a/media-libs/opencomposite/opencomposite-9999.ebuild 
b/media-libs/opencomposite/opencomposite-9999.ebuild
new file mode 100644
index 000000000..0140cc7f5
--- /dev/null
+++ b/media-libs/opencomposite/opencomposite-9999.ebuild
@@ -0,0 +1,57 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="OpenVR over OpenXR compatibility layer"
+HOMEPAGE="https://gitlab.com/znixian/OpenOVR";
+
+if [[ ${PV} == 9999 ]]; then
+       inherit git-r3
+       EGIT_REPO_URI="https://gitlab.com/znixian/OpenOVR.git";
+       EGIT_BRANCH="openxr"
+       KEYWORDS=""
+else
+       KEYWORDS="~amd64"
+fi
+
+LICENSE="GPL-3 Apache-2 MIT"
+SLOT="0"
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+BDEPEND=""
+
+PATCHES=(
+       "${FILESDIR}/0001-Add-install-target.patch"
+)
+
+src_configure()
+{
+       # Installing to /usr would not work with Steam bacause pressure vessel
+       # sandbox mounts /usr as /run/host/usr and openvr path would point to a
+       # non-existing location.
+       #
+       # Pressure vessel would need to be fixed and patch the location
+       # as it does for vulkan and other similar configuration files.
+       local mycmakeargs=(
+               "-DCMAKE_INSTALL_PREFIX=/opt"
+       )
+       cmake_src_configure
+}
+
+src_install()
+{
+       cmake_src_install
+
+       insinto /opt/OpenComposite
+       doins "${FILESDIR}/openvrpaths.vrpath"
+}
+
+pkg_postinst()
+{
+       elog "For applications to use OpenComposite, symlink"
+       elog "~/.config/openvr/openvrpaths.vrpath to 
/opt/OpenComposite/openvrpaths.vrpath."
+}

Reply via email to