commit:     4c7f4706fd69507963a706f5f15cf43d0f97e4de
Author:     Samuel Bauer <samuel.bauer <AT> yahoo <DOT> fr>
AuthorDate: Wed Aug  4 00:28:59 2021 +0000
Commit:     Samuel Bauer <samuel.bauer <AT> yahoo <DOT> fr>
CommitDate: Wed Aug  4 00:28:59 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=4c7f4706

games-emulation/yuzu: now defaults to vulkan-headers 1.2.180

Signed-off-by: Samuel Bauer <samuel.bauer <AT> yahoo.fr>

 games-emulation/yuzu/yuzu-9999.ebuild | 30 ++++++++++++++++++++----------
 1 file changed, 20 insertions(+), 10 deletions(-)

diff --git a/games-emulation/yuzu/yuzu-9999.ebuild 
b/games-emulation/yuzu/yuzu-9999.ebuild
index 9a6f4bd8f..8d51a6449 100644
--- a/games-emulation/yuzu/yuzu-9999.ebuild
+++ b/games-emulation/yuzu/yuzu-9999.ebuild
@@ -8,7 +8,7 @@ inherit cmake git-r3 flag-o-matic toolchain-funcs xdg
 DESCRIPTION="An emulator for Nintendo Switch"
 HOMEPAGE="https://yuzu-emu.org";
 EGIT_REPO_URI="https://github.com/yuzu-emu/yuzu";
-EGIT_SUBMODULES=( '*' '-ffmpeg' '-inih' '-libressl' '-libusb' '-libzip' 
'-opus' '-SDL' '-Vulkan-Headers' )
+EGIT_SUBMODULES=( '*' '-ffmpeg' '-inih' '-libressl' '-libusb' '-libzip' 
'-opus' '-SDL' )
 # TODO '-xbyak' wait for bump in tree
 # TODO cubeb auto-links to jack, pulse, alsa .., allow determining cubeb output
 #      media-libs/cubeb would benefit to a lot of packages: dolphin-emu, 
firefox, citra, self, ...
@@ -18,7 +18,7 @@ EGIT_SUBMODULES=( '*' '-ffmpeg' '-inih' '-libressl' '-libusb' 
'-libzip' '-opus'
 LICENSE="GPL-3"
 SLOT="0"
 KEYWORDS=""
-IUSE="+boxcat +compatibility-list +cubeb discord +qt5 sdl webengine 
+webservice"
+IUSE="+boxcat +compatibility-list +cubeb discord +qt5 sdl system-vulkan 
webengine +webservice"
 
 DEPEND="
        discord? ( >=dev-libs/rapidjson-1.1.0 )
@@ -30,6 +30,9 @@ DEPEND="
                >=media-libs/libsdl2-2.0.14
                >=dev-libs/inih-52
        )
+       system-vulkan? (
+               >=dev-util/vulkan-headers-1.2.180
+       )
        >=app-arch/lz4-1.8
        >=app-arch/zstd-1.5
        >=dev-cpp/catch-2.13:0
@@ -39,22 +42,27 @@ DEPEND="
        >=dev-libs/libzip-1.5
        >=media-libs/opus-1.3.1
        >=sys-libs/zlib-1.2
-       dev-util/vulkan-headers
        virtual/libusb:1
 "
-#      >=dev-libs/xbyak-5.96
 RDEPEND="${DEPEND}"
 REQUIRED_USE="boxcat? ( webservice ) || ( qt5 sdl )"
 
 PATCHES=( "${FILESDIR}"/${P}-assert.patch )
 
 pkg_setup() {
-       if [ tc-is-gcc -a $(gcc-major-version) -lt 10 ]; then
-               die "You need gcc version 10 or clang to compile this package"
+       if [ tc-is-gcc ]; then
+               [ "$(gcc-major-version)" -lt 11 ] && \
+                       die "You need gcc version 11 or clang to compile this 
package"
        fi
+       grep -q 'ThreadEngineStarter<void>' 
/usr/include/qt5/QtConcurrent/qtconcurrentthreadengine.h \
+               || die "add user patch for dev-qt/qtconcurrent: 
https://github.com/qt/qtbase/commit/659f7a06e91c04b239e3f4c0bcfccbe3581af1c3.diff";
 }
 
 src_unpack() {
+       if use system-vulkan; then
+               EGIT_SUBMODULES+=('-Vulkan-Headers')
+       fi
+
        git-r3_src_unpack
 
        # Do not fetch via sources because this file always changes
@@ -88,9 +96,10 @@ src_prepare() {
        # Unbundle xbyak ( uncomment when xbyak version is ok or never as it is 
only headers )
        # sed -i -e 
'/target_include_directories(xbyak/s:./xbyak/xbyak:/usr/include/xbyak/:' 
externals/CMakeLists.txt
 
-       # Unbundle vulkan headers
-       sed -i -e 
's:../../externals/Vulkan-Headers/include:/usr/include/vulkan/:' 
src/video_core/CMakeLists.txt src/yuzu/CMakeLists.txt 
src/yuzu_cmd/CMakeLists.txt || die
-       sed -i -e '/VK_ERROR_INCOMPATIBLE_VERSION_KHR/d' 
src/video_core/vulkan_common/vulkan_wrapper.cpp || die
+       if use system-vulkan; then # Unbundle vulkan headers
+               sed -i -e 
's:../../externals/Vulkan-Headers/include:/usr/include/vulkan/:' 
src/video_core/CMakeLists.txt src/yuzu/CMakeLists.txt 
src/yuzu_cmd/CMakeLists.txt || die
+               sed -i -e '/VK_ERROR_INCOMPATIBLE_VERSION_KHR/d' 
src/video_core/vulkan_common/vulkan_wrapper.cpp || die
+       fi
 
        # Unbundle discord rapidjson
        sed -i '/NOT RAPIDJSONTEST/,/endif(NOT 
RAPIDJSONTEST)/d;/find_file(RAPIDJSON/d;s:\${RAPIDJSON}:"/usr/include/rapidjson":'
 externals/discord-rpc/CMakeLists.txt || die
@@ -120,10 +129,11 @@ src_configure() {
                -DENABLE_SDL2=$(usex sdl)
                -DENABLE_WEB_SERVICE=$(usex webservice)
                -DUSE_DISCORD_PRESENCE=$(usex discord)
-               -DYUZU_ALLOW_SYSTEM_SDL2=$(usex sdl)
                -DYUZU_ENABLE_BOXCAT=$(usex boxcat)
+               -DYUZU_USE_EXTERNAL_SDL2=OFF
                -DYUZU_USE_QT_WEB_ENGINE=$(usex webengine)
        )
+
        cmake_src_configure
 
        # This would be better in src_unpack but it would be unlinked

Reply via email to