git: 84aff5f6f89b - main - emulators/yuzu: require gcc11+ after 50709831d2dd

From: Jan Beich <jbeich_at_FreeBSD.org>
Date: Sun, 12 Jun 2022 04:57:29 UTC
The branch main has been updated by jbeich:

URL: https://cgit.FreeBSD.org/ports/commit/?id=84aff5f6f89b08cfcb55a9acf31ecc0aeddbf9eb

commit 84aff5f6f89b08cfcb55a9acf31ecc0aeddbf9eb
Author:     Jan Beich <jbeich@FreeBSD.org>
AuthorDate: 2022-06-12 04:52:21 +0000
Commit:     Jan Beich <jbeich@FreeBSD.org>
CommitDate: 2022-06-12 04:57:04 +0000

    emulators/yuzu: require gcc11+ after 50709831d2dd
    
    In file included from src/./video_core/gpu_thread.h:13,
                     from src/video_core/gpu_thread.cpp:13:
    src/./common/bounded_threadsafe_queue.h: In destructor 'Common::mpsc::Slot<T>::~Slot()':
    src/./common/bounded_threadsafe_queue.h:34:18: error: 'struct std::atomic_flag' has no member named 'test'
       34 |         if (turn.test()) {
          |                  ^~~~
    src/./common/bounded_threadsafe_queue.h: In instantiation of 'void Common::mpsc::Queue<T, Allocator>::Pop(T&, std::stop_token) [with T = VideoCommon::GPUThread::CommandDataContainer; Allocator = std::allocator<Common::mpsc::Slot<VideoCommon::GPUThread::CommandDataContainer> >]':
    src/video_core/gpu_thread.cpp:35:41:   required from here
    src/./common/bounded_threadsafe_queue.h:129:32: error: 'struct std::atomic_flag' has no member named 'test'
      129 |         if (false == slot.turn.test()) {
          |                      ~~~~~~~~~~^~~~
    src/./common/bounded_threadsafe_queue.h:131:60: error: 'struct std::atomic_flag' has no member named 'test'
      131 |             cv.wait(lock, stop, [&slot] { return slot.turn.test(); });
          |                                                  ~~~~~~~~~~^~~~
    src/./common/bounded_threadsafe_queue.h:136:19: error: 'struct std::atomic_flag' has no member named 'notify_one'
      136 |         slot.turn.notify_one();
          |         ~~~~~~~~~~^~~~~~~~~~
    src/./common/bounded_threadsafe_queue.h: In instantiation of 'void Common::mpsc::Queue<T, Allocator>::emplace(Args&& ...) [with Args = {VideoCommon::GPUThread::CommandDataContainer}; T = VideoCommon::GPUThread::CommandDataContainer; Allocator = std::allocator<Common::mpsc::Slot<VideoCommon::GPUThread::CommandDataContainer> >]':
    src/./common/bounded_threadsafe_queue.h:123:16:   required from 'void Common::mpsc::Queue<T, Allocator>::Push(P&&) [with P = VideoCommon::GPUThread::CommandDataContainer; <template-parameter-2-2> = void; T = VideoCommon::GPUThread::CommandDataContainer; Allocator = std::allocator<Common::mpsc::Slot<VideoCommon::GPUThread::CommandDataContainer> >]'
    src/video_core/gpu_thread.cpp:122:81:   required from here
    src/./common/bounded_threadsafe_queue.h:146:19: error: 'struct std::atomic_flag' has no member named 'wait'
      146 |         slot.turn.wait(true);
          |         ~~~~~~~~~~^~~~
    
    Regressed by:   https://github.com/yuzu-emu/yuzu/commit/4dd6bcd20639
---
 emulators/yuzu/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/emulators/yuzu/Makefile b/emulators/yuzu/Makefile
index 2fbbc7849750..1deb0b718a59 100644
--- a/emulators/yuzu/Makefile
+++ b/emulators/yuzu/Makefile
@@ -55,7 +55,7 @@ GH_TUPLE=	yuzu-emu:mbedtls:v2.16.9-115-g8c88150ca:mbedtls/externals/mbedtls \
 		yhirose:cpp-httplib:v0.9.0-5-g9648f95:cpp_httplib/externals/cpp-httplib
 
 USES=		cmake:testing compiler:c++17-lang elfctl localbase:ldflags pkgconfig sdl ssl
-USE_GCC=	yes:build # libc++ lacks std::atomic_ref, std::ranges
+USE_GCC=	11+:build # libc++ lacks std::atomic_ref, std::ranges
 USE_SDL=	sdl2
 CMAKE_ON=	Boost_USE_STATIC_LIBS
 CMAKE_ON+=	BUNDLE_SPEEX # only used by cubeb tests