commit:     33cfb998f97d9019dff583847fdbe3ddfd1acf76
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Sun Jun 30 14:35:09 2024 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Sun Jun 30 15:04:52 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=33cfb998

gui-wm/gamescope: Bump to 3.14.22, drop old 3.14.18

Add new USE flags for optional features. Now bundling libliftoff and
vkroots as requested by upstream.

Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>

 gui-wm/gamescope/Manifest                          |  6 ++-
 ...ope-3.14.18.ebuild => gamescope-3.14.22.ebuild} | 63 ++++++++++++----------
 gui-wm/gamescope/metadata.xml                      |  1 +
 3 files changed, 39 insertions(+), 31 deletions(-)

diff --git a/gui-wm/gamescope/Manifest b/gui-wm/gamescope/Manifest
index b6ffeb9df758..3870b7141491 100644
--- a/gui-wm/gamescope/Manifest
+++ b/gui-wm/gamescope/Manifest
@@ -1,3 +1,5 @@
-DIST gamescope-3.14.18.tar.gz 520343 BLAKE2B 
098dc152980c62a7386528378a5c0ad48923324dead15a2ed4be77d34a711065388c96edf8c9707ff13e595b82ca5f5463b489a9b521960f9be3eb744948cc6f
 SHA512 
9b6774665b29fd84884ec057f66218e1e1810bc099d6a2e100a814fbc6250f8de9857b53e75400044b3cd77a958d6f03fcf9b8e65cb4a42e769ad0f9cda7394b
-DIST reshade-9fdbea6892f9959fdc18095d035976c574b268b7.tar.gz 1543894 BLAKE2B 
5e2b643ffbbda3ad078deb075a6fada1d0a560c6d865b7febee6a8eaade83ec90db3c5a8f4130d27b6dfaa8ee7b899edd214c23c947678eed28fb8e7165d9bd2
 SHA512 
4565d094e1c2d53d5073b4976874665d38dcf7ca86e982e569cc76923eaa9187fa32a4385fc577a3a867d2917596e6377e5a023a34bc2d389ff899d5b69764fb
+DIST gamescope-3.14.22.tar.gz 536052 BLAKE2B 
f0d8efbaa02c70c810e59b4bc18e46a01205ccfb190a50796a22aefd19689f796406ff4eafd8974ea805843d08fbf14dabf0441fe83cbcc14ad219a04de1f67a
 SHA512 
7c11f8df21f1938a605b9648187f4a115b89397a1dfb11066af3ffa9fed05b95d9656c5e0794ff8c3f9eddaf05602369e0e5bac803b7655f21135a01cd073ab3
+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-a5c9826e6d7d8b504b07d1c02425e6f62b020791.tar.gz 620424 BLAKE2B 
83630b77983009a36fa4f168bbe2eceb73f634f9dd149cc5e6b18fbf647245a32a5d31dc3fbd0d1bed1d0dafc4cbb2fcea3ee4b4f5660a35ca37eff4679b80a2
 SHA512 
6857ded750fda91d55e53edfc270eb4e7bf44d7330d17c8fcd13c248c71abba685f34260d1e6d20cdb302a8d4f9158fb43421943cca74630fd780a4048aed07b

diff --git a/gui-wm/gamescope/gamescope-3.14.18.ebuild 
b/gui-wm/gamescope/gamescope-3.14.22.ebuild
similarity index 66%
rename from gui-wm/gamescope/gamescope-3.14.18.ebuild
rename to gui-wm/gamescope/gamescope-3.14.22.ebuild
index 069182a94bc9..0a4ac07347a7 100644
--- a/gui-wm/gamescope/gamescope-3.14.18.ebuild
+++ b/gui-wm/gamescope/gamescope-3.14.22.ebuild
@@ -5,43 +5,40 @@ EAPI=8
 
 inherit fcaps meson
 
-RESHADE_COMMIT="9fdbea6892f9959fdc18095d035976c574b268b7"
-WLROOTS_COMMIT="a5c9826e6d7d8b504b07d1c02425e6f62b020791"
 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";
-       # Prevent wlroots and other submodule from being pull
-       # Not messing with system packages
-       EGIT_SUBMODULES=( src/reshade )
        inherit git-r3
 else
+       RESHADE_COMMIT="696b14cd6006ae9ca174e6164450619ace043283"
+       LIBLIFTOFF_COMMIT="0.5.0" # Upstream points at this release.
+       VKROOTS_COMMIT="5106d8a0df95de66cc58dc1ea37e69c99afc9540"
+       WLROOTS_COMMIT="a5c9826e6d7d8b504b07d1c02425e6f62b020791"
        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="pipewire +wsi-layer"
-
-# For when wlroots 0.18 is released.
-# =gui-libs/wlroots-0.18*[X,libinput(+)]
+IUSE="avif libei pipewire +sdl +wsi-layer"
 
 RDEPEND="
        >=dev-libs/wayland-1.21
        gui-libs/libdecor
-       >=media-libs/libavif-1.0.0:=
-       >=media-libs/libdisplay-info-0.1.1
-       media-libs/libsdl2[video,vulkan]
+       =media-libs/libdisplay-info-0.1*:=
        media-libs/vulkan-loader
        sys-apps/hwdata
        sys-libs/libcap
@@ -59,9 +56,14 @@ RDEPEND="
        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(+)]
@@ -74,7 +76,6 @@ RDEPEND="
 "
 DEPEND="
        ${RDEPEND}
-       =dev-libs/libliftoff-0.5*
        >=dev-libs/wayland-protocols-1.34
        >=dev-libs/stb-20240201-r1
        dev-util/vulkan-headers
@@ -82,9 +83,6 @@ DEPEND="
        dev-util/spirv-headers
        wsi-layer? ( >=media-libs/vkroots-0_p20240430 )
 "
-RDEPEND+="
-       dev-libs/libliftoff
-"
 BDEPEND="
        dev-util/glslang
        dev-util/wayland-scanner
@@ -103,11 +101,17 @@ src_prepare() {
        default
 
        # ReShade is bundled as a git submodule, but it references an unofficial
-       # fork, so we cannot unbundle it. Symlink to its extracted sources.
-       # For 9999, use the bundled submodule.
+       # 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
-               rmdir src/reshade || die
-               ln -snfT ../../reshade-${RESHADE_COMMIT} src/reshade || die
+               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
@@ -115,19 +119,20 @@ src_prepare() {
        # 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
-
-       # Until wlroots 0.18 is released.
-       rmdir subprojects/wlroots || die
-       ln -snfT ../../wlroots-${WLROOTS_COMMIT} subprojects/wlroots || die
 }
 
 src_configure() {
+       # Disabling DRM backend is currently broken.
+       # https://github.com/ValveSoftware/gamescope/issues/1347
        local emesonargs=(
-               --force-fallback-for=
-               -Dbenchmark=disabled
-               -Denable_openvr_support=false
                $(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

diff --git a/gui-wm/gamescope/metadata.xml b/gui-wm/gamescope/metadata.xml
index cc171105f9d8..1a847c302a36 100644
--- a/gui-wm/gamescope/metadata.xml
+++ b/gui-wm/gamescope/metadata.xml
@@ -9,6 +9,7 @@
                <remote-id type="github">ValveSoftware/gamescope</remote-id>
        </upstream>
        <use>
+               <flag name="libei">Enable emulated input using 
<pkg>dev-libs/libei</pkg></flag>
                <flag name="pipewire">Enable screen capture via PipeWire</flag>
                <flag name="wsi-layer">Enable the WSI layer (required for 
HDR)</flag>
        </use>

Reply via email to