commit: 309058eed16ce7d37f884f3ab11ed2e3888d968b
Author: James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 20 21:00:40 2024 +0000
Commit: James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Tue Aug 20 21:00:40 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=309058ee
gui-wm/gamescope: Version bump to 3.15.0
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>
gui-wm/gamescope/Manifest | 2 +
gui-wm/gamescope/gamescope-3.15.0.ebuild | 149 +++++++++++++++++++++++++++++++
2 files changed, 151 insertions(+)
diff --git a/gui-wm/gamescope/Manifest b/gui-wm/gamescope/Manifest
index 3870b7141491..25d03089d320 100644
--- a/gui-wm/gamescope/Manifest
+++ b/gui-wm/gamescope/Manifest
@@ -1,5 +1,7 @@
DIST gamescope-3.14.22.tar.gz 536052 BLAKE2B
f0d8efbaa02c70c810e59b4bc18e46a01205ccfb190a50796a22aefd19689f796406ff4eafd8974ea805843d08fbf14dabf0441fe83cbcc14ad219a04de1f67a
SHA512
7c11f8df21f1938a605b9648187f4a115b89397a1dfb11066af3ffa9fed05b95d9656c5e0794ff8c3f9eddaf05602369e0e5bac803b7655f21135a01cd073ab3
+DIST gamescope-3.15.0.tar.gz 569885 BLAKE2B
64db0d7366f0d0e11daef7909fa5800016f87799f8d35db837f6e2e1e6721b20cd808c71cf0249730d9808760da11ea64a4df7b7961d3981495ddce076fc2b77
SHA512
bb194bffe6783c3e0e22dceba8e38d066d5f1517408a03a5659cca66ca165dd50d0bd5b143e75cc70797db240fd361c1fc08ccffec8efb99c3819c86b5288a2f
DIST libliftoff-0.5.0.tar.gz 39076 BLAKE2B
a5c35c734a5ba4049661ce336401bd88d393001d7c49786d486146998d39530c364f7752b53968f5ab48f5eb774fa9c4245087bdb016f459a729991377023f61
SHA512
ce808f6a087f1f629cfebef95bfc7e216a09fb409b96b3c9f6b84d9d986ce50c5d7bf5b45c68e8baa99566b3627d754c269855b6f4ec3be63ae7b9f5109d5f08
DIST reshade-696b14cd6006ae9ca174e6164450619ace043283.tar.gz 1684777 BLAKE2B
3b2fcd1ed53dd6a8c459cf716697eec8a21f6fd9c25e4f6baa752e4226eaf35837e0f1595eef065a064bb0d76b1b067f643cd14ef896875448c99f57e10e6fb9
SHA512
7fe1fe07622efd90bd94e1755019ca47657acd07137669e00b97bf70017a58c1f699e3dec1c720caafd1296275c7a25fd2f4d6e478cebbdf48bd69f985a00cdf
DIST vkroots-5106d8a0df95de66cc58dc1ea37e69c99afc9540.tar.gz 352651 BLAKE2B
bc6c7a4f5b4f810c4d87a6cef46e73adb292bc22ae9a40666a6c7c8ab0cbc1973af405b32a5c7a3d38623c92e5d41e8472dabb744fcf31cf29118b9684dcfc32
SHA512
726e65dd0bb322d537e985ba2e504c68ef1b474574f11a5b102edcb8a7b74a6d86dea132c3b11417399a00beff9163e7aad413a389cf6073ec44d5ce6175ffc5
+DIST wlroots-4bc5333a2cbba0b0b88559f281dbde04b849e6ef.tar.gz 629328 BLAKE2B
c48ff80616a82529ea0b503204557a41be8f8ad8fb60d0f5ae155a237d97117f3551f7992957a03c08fec6374e2087483052712a173fd422c5236f619a16bc64
SHA512
60731f5ce90e061d674168d42c2d4e02766f85b8b1566611022fc930feb181d16906ac23e92f999c90fa6b48c769279520de12a9abeae20c5553b6ccdd31427e
DIST wlroots-a5c9826e6d7d8b504b07d1c02425e6f62b020791.tar.gz 620424 BLAKE2B
83630b77983009a36fa4f168bbe2eceb73f634f9dd149cc5e6b18fbf647245a32a5d31dc3fbd0d1bed1d0dafc4cbb2fcea3ee4b4f5660a35ca37eff4679b80a2
SHA512
6857ded750fda91d55e53edfc270eb4e7bf44d7330d17c8fcd13c248c71abba685f34260d1e6d20cdb302a8d4f9158fb43421943cca74630fd780a4048aed07b
diff --git a/gui-wm/gamescope/gamescope-3.15.0.ebuild
b/gui-wm/gamescope/gamescope-3.15.0.ebuild
new file mode 100644
index 000000000000..8e2b5db23194
--- /dev/null
+++ b/gui-wm/gamescope/gamescope-3.15.0.ebuild
@@ -0,0 +1,149 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit fcaps meson
+
+MY_PV=$(ver_rs 3 -)
+MY_PV="${MY_PV//_/-}"
+
+DESCRIPTION="Efficient micro-compositor for running games"
+HOMEPAGE="https://github.com/ValveSoftware/gamescope"
+EGIT_SUBMODULES=( src/reshade subprojects/{libliftoff,vkroots,wlroots} )
+
+if [[ ${PV} == "9999" ]]; then
+ EGIT_REPO_URI="https://github.com/ValveSoftware/${PN}.git"
+ inherit git-r3
+else
+ RESHADE_COMMIT="696b14cd6006ae9ca174e6164450619ace043283"
+ LIBLIFTOFF_COMMIT="0.5.0" # Upstream points at this release.
+ VKROOTS_COMMIT="5106d8a0df95de66cc58dc1ea37e69c99afc9540"
+ WLROOTS_COMMIT="4bc5333a2cbba0b0b88559f281dbde04b849e6ef"
+ SRC_URI="
+
https://github.com/ValveSoftware/${PN}/archive/refs/tags/${MY_PV}.tar.gz ->
${P}.tar.gz
+
https://gitlab.freedesktop.org/emersion/libliftoff/-/releases/v${LIBLIFTOFF_COMMIT}/downloads/libliftoff-${LIBLIFTOFF_COMMIT}.tar.gz
+
https://github.com/Joshua-Ashton/reshade/archive/${RESHADE_COMMIT}.tar.gz ->
reshade-${RESHADE_COMMIT}.tar.gz
+
https://github.com/Joshua-Ashton/vkroots/archive/${VKROOTS_COMMIT}.tar.gz ->
vkroots-${VKROOTS_COMMIT}.tar.gz
+
https://github.com/Joshua-Ashton/wlroots/archive/${WLROOTS_COMMIT}.tar.gz ->
wlroots-${WLROOTS_COMMIT}.tar.gz
+ "
+ KEYWORDS="~amd64"
+fi
+
+S="${WORKDIR}/${PN}-${MY_PV}"
+LICENSE="BSD-2"
+SLOT="0"
+IUSE="avif libei pipewire +sdl +wsi-layer"
+
+RDEPEND="
+ >=dev-libs/wayland-1.21
+ gui-libs/libdecor
+ <media-libs/libdisplay-info-0.3:=
+ media-libs/vulkan-loader
+ sys-apps/hwdata
+ sys-libs/libcap
+ >=x11-libs/libdrm-2.4.109
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXcursor
+ x11-libs/libXdamage
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXi
+ x11-libs/libxkbcommon
+ x11-libs/libXmu
+ x11-libs/libXrender
+ x11-libs/libXres
+ x11-libs/libXtst
+ x11-libs/libXxf86vm
+ avif? ( >=media-libs/libavif-1.0.0:= )
+ libei? ( dev-libs/libei )
+ pipewire? ( >=media-video/pipewire-0.3:= )
+ sdl? ( media-libs/libsdl2[video,vulkan] )
+ wsi-layer? ( x11-libs/libxcb )
+"
+# For bundled wlroots.
+RDEPEND+="
+ >=dev-libs/libinput-1.14.0:=
+ media-libs/libglvnd
+ media-libs/mesa[egl(+),gles2(+)]
+ sys-auth/seatd:=
+ virtual/libudev
+ x11-base/xwayland
+ x11-libs/libxcb:=
+ >=x11-libs/pixman-0.42.0
+ x11-libs/xcb-util-wm
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-libs/wayland-protocols-1.34
+ >=dev-libs/stb-20240201-r1
+ dev-util/vulkan-headers
+ media-libs/glm
+ dev-util/spirv-headers
+ wsi-layer? ( >=media-libs/vkroots-0_p20240430 )
+"
+BDEPEND="
+ dev-util/glslang
+ dev-util/wayland-scanner
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-deprecated-stb.patch
+)
+
+FILECAPS=(
+ cap_sys_nice usr/bin/${PN}
+)
+
+src_prepare() {
+ default
+
+ # ReShade is bundled as a git submodule, but it references an unofficial
+ # fork, so we cannot unbundle it. Upstream have requested that we do not
+ # unbundle libliftoff, vkroots, or wlroots. Symlink to the extracted
sources
+ # when not using the git submodules in 9999.
+ if [[ ${PV} != "9999" ]]; then
+ local dir name commit
+ for dir in "${EGIT_SUBMODULES[@]}"; do
+ rmdir "${dir}" || die
+ name=${dir##*/}
+ commit=${name^^}_COMMIT
+ ln -snfT "../../${name}-${!commit}" "${dir}" || die
+ done
+ fi
+
+ # SPIRV-Headers is required by ReShade. It is bundled as a git
submodule but
+ # not wrapped with Meson, so we can symlink to our system-wide headers.
+ # For 9999, this submodule is not included.
+ mkdir -p thirdparty/SPIRV-Headers/include || die
+ ln -snf "${ESYSROOT}"/usr/include/spirv
thirdparty/SPIRV-Headers/include/ || die
+}
+
+src_configure() {
+ # Disabling DRM backend is currently broken.
+ # https://github.com/ValveSoftware/gamescope/issues/1347
+ local emesonargs=(
+ $(meson_feature pipewire)
+ -Ddrm_backend=enabled
+ $(meson_feature sdl sdl2_backend)
+ $(meson_feature avif avif_screenshots)
+ $(meson_feature libei input_emulation)
+ $(meson_use wsi-layer enable_gamescope_wsi_layer)
+ -Denable_openvr_support=false
+ -Dbenchmark=disabled
+
+ -Dwlroots:xcb-errors=disabled
+ -Dwlroots:examples=false
+ -Dwlroots:renderers=gles2,vulkan
+ -Dwlroots:xwayland=enabled
+ -Dwlroots:backends=libinput
+ -Dwlroots:session=enabled
+ )
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install --skip-subprojects
+}