diff --git a/emulators/yuzu/Makefile b/emulators/yuzu/Makefile index e59726577e11..f5a30cc59a3a 100644 --- a/emulators/yuzu/Makefile +++ b/emulators/yuzu/Makefile @@ -1,126 +1,127 @@ PORTNAME= yuzu PORTVERSION= s20221206 +PORTREVISION= 1 CATEGORIES= emulators .if make(makesum) MASTER_SITES= https://api.yuzu-emu.org/gamedb/?dummy=/:gamedb .else MASTER_SITES= LOCAL/jbeich:gamedb .endif DISTFILES= ${PORTNAME}-${DISTVERSIONFULL}/compatibility_list.json:gamedb EXTRACT_ONLY= ${DISTFILES:N*\:gamedb:C/\:.*//} PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/ PATCHFILES+= c17d71240b23.patch:-p1 # https://github.com/yuzu-emu/yuzu/pull/9042 mainline-merge MAINTAINER= jbeich@FreeBSD.org COMMENT= Nintendo Switch emulator/debugger WWW= https://yuzu-emu.org/ LICENSE= APACHE20 BSD3CLAUSE GPLv3+ ISCL MIT UNLICENSE LICENSE_COMB= multi LICENSE_FILE_BSD3CLAUSE=${WRKSRC}/externals/sirit/LICENSE.txt LICENSE_FILE_GPLv3+ = ${WRKSRC}/LICENSE.txt LICENSE_FILE_ISCL= ${WRKSRC}/externals/cubeb/LICENSE LICENSE_FILE_MIT= ${WRKSRC}/externals/sirit/externals/SPIRV-Headers/LICENSE ONLY_FOR_ARCHS= aarch64 amd64 ONLY_FOR_ARCHS_REASON= requires int128 and dynarmic backend BROKEN_FreeBSD_12= htonl() in fails -Werror=conversion BUILD_DEPENDS= boost-libs>0:devel/boost-libs \ nlohmann-json>0:devel/nlohmann-json \ - glslangValidator:graphics/glslang + xbyak>0:devel/xbyak \ + glslangValidator:graphics/glslang \ + vulkan-headers>0:graphics/vulkan-headers LIB_DEPENDS= liblz4.so:archivers/liblz4 \ libzstd.so:archivers/zstd \ libopus.so:audio/opus \ - libavcodec.so:multimedia/ffmpeg + libavcodec.so:multimedia/ffmpeg \ + libenet.so:net/enet TEST_DEPENDS= catch>0:devel/catch USE_GITHUB= yes GH_ACCOUNT= yuzu-emu GH_TAGNAME= bfdd51278 GH_TUPLE= yuzu-emu:mbedtls:v2.16.9-115-g8c88150ca:mbedtls/externals/mbedtls \ yuzu-emu:sirit:d7ad93a:sirit/externals/sirit \ KhronosGroup:SPIRV-Headers:1.5.4.raytracing.fixed-201-gc214f6f:SPIRV_Headers/externals/sirit/externals/SPIRV-Headers \ - KhronosGroup:Vulkan-Headers:v1.3.236:Vulkan_Headers/externals/Vulkan-Headers \ MerryMage:dynarmic:6.4.0:dynarmic/externals/dynarmic \ arun11299:cpp-jwt:v1.4-14-ge12ef06:cpp_jwt/externals/cpp-jwt \ arsenm:sanitizers-cmake:aab6948:sanitizers_cmake/externals/cubeb/cmake/sanitizers-cmake \ benhoyt:inih:r52:inih/externals/inih/inih \ - herumi:xbyak:v6.64:xbyak/externals/xbyak \ kinetiknz:cubeb:cubeb-0.2-1350-gf79e0cf:cubeb/externals/cubeb \ - lsalzman:enet:v1.3.13-14-g39a72ab:enet/externals/enet \ yhirose:cpp-httplib:v0.10.8-1-g305a7ab: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_SDL= sdl2 CMAKE_ON= Boost_USE_STATIC_LIBS CMAKE_ON+= BUNDLE_SPEEX # only used by cubeb tests CMAKE_OFF= YUZU_CHECK_SUBMODULES YUZU_USE_EXTERNAL_SDL2 CMAKE_OFF+= YUZU_USE_PRECOMPILED_HEADERS DYNARMIC_USE_PRECOMPILED_HEADERS # GCC CMAKE_OFF+= ${CMAKE_TESTING_ON} CMAKE_TESTING_ON= YUZU_TESTS LDFLAGS+= -static-libstdc++ -static-libgcc # avoid libc++ conflict, requires files/patch-fmt LDFLAGS+= -Wl,--as-needed # Qt5Network ELF_FEATURES= ${PLIST_FILES:Mbin/*:S/^/+wxneeded:/} PLIST_FILES= bin/${PORTNAME}-cmd \ bin/${PORTNAME}-room OPTIONS_DEFINE= ALSA PULSEAUDIO JACK NLS QT5 SNDIO VAAPI VULKAN WEBENGINE OPTIONS_DEFAULT=PULSEAUDIO JACK QT5 SNDIO VAAPI VULKAN WEBENGINE ALSA_BUILD_DEPENDS= alsa-lib>0:audio/alsa-lib ALSA_CMAKE_BOOL= USE_ALSA JACK_BUILD_DEPENDS= jackit>0:audio/jack JACK_CMAKE_BOOL= USE_JACK NLS_DESC= UI translations (implies QT5) NLS_USE= QT=linguisttools:build NLS_CMAKE_BOOL= ENABLE_QT_TRANSLATION NLS_IMPLIES= QT5 PULSEAUDIO_BUILD_DEPENDS=pulseaudio>0:audio/pulseaudio PULSEAUDIO_CMAKE_BOOL= USE_PULSE QT5_USES= desktop-file-utils qt:5 shared-mime-info QT5_USE= QT=qmake:build,buildtools:build,concurrent:build,core,dbus,gui,multimedia,widgets QT5_CMAKE_BOOL= ENABLE_QT QT5_PLIST_FILES= bin/${PORTNAME} \ share/applications/org.yuzu_emu.yuzu.desktop \ share/icons/hicolor/scalable/apps/org.yuzu_emu.yuzu.svg \ share/metainfo/org.yuzu_emu.yuzu.metainfo.xml \ share/mime/packages/org.yuzu_emu.yuzu.xml SNDIO_BUILD_DEPENDS= sndio>0:audio/sndio SNDIO_CMAKE_BOOL= USE_SNDIO VAAPI_LIB_DEPENDS= libva.so:multimedia/libva VULKAN_DESC= Vulkan renderer VULKAN_RUN_DEPENDS= ${LOCALBASE}/lib/libvulkan.so:graphics/vulkan-loader WEBENGINE_DESC= Web applet support (implies QT5) WEBENGINE_USE= QT=webengine WEBENGINE_CMAKE_BOOL= YUZU_USE_QT_WEB_ENGINE WEBENGINE_IMPLIES= QT5 post-extract: @${CP} ${DISTFILES:M*\:gamedb:C/\:.*//:S,^,${_DISTDIR},} \ ${WRKSRC}/dist/compatibility_list/ post-patch: @${REINPLACE_CMD} -e 's/@GIT_BRANCH@/master/' \ -e 's/@GIT_DESC@/${GH_TAGNAME}/' \ ${WRKSRC}/src/common/scm_rev.cpp.in # Temporarily use ConsoleKit2 like sysutils/gnome-settings-daemon @${REINPLACE_CMD} -e 's,/login1,/ConsoleKit/Manager,' \ -e 's,login1,ConsoleKit,' \ ${WRKSRC}/src/${PORTNAME}/main.cpp post-patch-VAAPI-off: @${REINPLACE_CMD} -i .nova '/pkg_check.*libva/d' \ ${WRKSRC}/CMakeLists.txt .include diff --git a/emulators/yuzu/distinfo b/emulators/yuzu/distinfo index 91b0aa06eb01..2b22a468c6e8 100644 --- a/emulators/yuzu/distinfo +++ b/emulators/yuzu/distinfo @@ -1,31 +1,25 @@ TIMESTAMP = 1670378894 SHA256 (yuzu-s20221206/compatibility_list.json) = 0ef0760053167eb6b43f26cac32b94956c108310e07dd1fcceef6018d4632d2b SIZE (yuzu-s20221206/compatibility_list.json) = 1646739 SHA256 (yuzu-emu-yuzu-s20221206-bfdd51278_GH0.tar.gz) = 72ec9966084e416ee813bc1d1ecd263b183c60a77411b5394134b91e9465ac2e SIZE (yuzu-emu-yuzu-s20221206-bfdd51278_GH0.tar.gz) = 5281416 SHA256 (yuzu-emu-mbedtls-v2.16.9-115-g8c88150ca_GH0.tar.gz) = 8cd6d075b4da0ad5fb995eb37390e2e6088be8d41ab1cdfc7e7e4256bd991450 SIZE (yuzu-emu-mbedtls-v2.16.9-115-g8c88150ca_GH0.tar.gz) = 2679189 SHA256 (yuzu-emu-sirit-d7ad93a_GH0.tar.gz) = f338a73c12bcc4e6c18a1a8104ca7bf30af40eb37b4054992e3be4c3d3589faa SIZE (yuzu-emu-sirit-d7ad93a_GH0.tar.gz) = 23652 SHA256 (KhronosGroup-SPIRV-Headers-1.5.4.raytracing.fixed-201-gc214f6f_GH0.tar.gz) = 5e32aefc599e6d26c2373b7296a37980b9c6c7ff6f636d5eee49f79b437e5a51 SIZE (KhronosGroup-SPIRV-Headers-1.5.4.raytracing.fixed-201-gc214f6f_GH0.tar.gz) = 445472 -SHA256 (KhronosGroup-Vulkan-Headers-v1.3.236_GH0.tar.gz) = a86b8c38618b764057b359cf0f18c12a7c81b7760fe6fca1acf9adb471d55d4c -SIZE (KhronosGroup-Vulkan-Headers-v1.3.236_GH0.tar.gz) = 1764329 SHA256 (MerryMage-dynarmic-6.4.0_GH0.tar.gz) = c1abcd2acd728f7aae2f768d72578b73dc222aa8e410d1249a8ed82937f3b779 SIZE (MerryMage-dynarmic-6.4.0_GH0.tar.gz) = 2620474 SHA256 (arun11299-cpp-jwt-v1.4-14-ge12ef06_GH0.tar.gz) = 0409fa5413800fb291251cf3142e07a43fd4064996fee0e793323d3a74dd33b8 SIZE (arun11299-cpp-jwt-v1.4-14-ge12ef06_GH0.tar.gz) = 1246634 SHA256 (arsenm-sanitizers-cmake-aab6948_GH0.tar.gz) = d9009e17948aff769a6f6e16b52d4d8752c5cc2cab1e9c381d3a31fd1a680b58 SIZE (arsenm-sanitizers-cmake-aab6948_GH0.tar.gz) = 7240 SHA256 (benhoyt-inih-r52_GH0.tar.gz) = 439cff9ce9a8afc52d08772ac3e93b3cecd79c7707f871fb4534fb3a48201880 SIZE (benhoyt-inih-r52_GH0.tar.gz) = 16808 -SHA256 (herumi-xbyak-v6.64_GH0.tar.gz) = 836b125677e2b0c3d14d624600b8f8bb8342ab5680193559c57835267b709109 -SIZE (herumi-xbyak-v6.64_GH0.tar.gz) = 247663 SHA256 (kinetiknz-cubeb-cubeb-0.2-1350-gf79e0cf_GH0.tar.gz) = 8629757290774a34ed3fcd53b6491e9ccc96231018406c58c493f336b3ced908 SIZE (kinetiknz-cubeb-cubeb-0.2-1350-gf79e0cf_GH0.tar.gz) = 220847 -SHA256 (lsalzman-enet-v1.3.13-14-g39a72ab_GH0.tar.gz) = bac947ed61414d92ac4689d677f25ab457f29efe4b676547f56b4e913daa6d54 -SIZE (lsalzman-enet-v1.3.13-14-g39a72ab_GH0.tar.gz) = 79521 SHA256 (yhirose-cpp-httplib-v0.10.8-1-g305a7ab_GH0.tar.gz) = 2b8ebbe60c5fab1254e454518108cb8da5ee3a07e1cf9f432448d985efe4a003 SIZE (yhirose-cpp-httplib-v0.10.8-1-g305a7ab_GH0.tar.gz) = 620778 SHA256 (c17d71240b23.patch) = 4aaf5522ec3f7d393cec59638220d6142489c4e946060ec94444ca3f47e2b2a7 SIZE (c17d71240b23.patch) = 7562 diff --git a/emulators/yuzu/files/patch-fmt b/emulators/yuzu/files/patch-fmt deleted file mode 100644 index ebc122570634..000000000000 --- a/emulators/yuzu/files/patch-fmt +++ /dev/null @@ -1,59 +0,0 @@ -Partially revert https://github.com/yuzu-emu/yuzu/commit/bc30a591ba72 - -/usr/local/bin/ld: src/yuzu/CMakeFiles/yuzu.dir/about_dialog.cpp.o: in function `AboutDialog::AboutDialog(QWidget*)': -about_dialog.cpp:(.text+0x3d3): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: src/yuzu/CMakeFiles/yuzu.dir/applets/web_browser.cpp.o: in function `QtNXWebEngineView::LoadExtractedFonts()': -web_browser.cpp:(.text+0x14e7): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: src/yuzu/CMakeFiles/yuzu.dir/configuration/config.cpp.o: in function `Config::Initialize(std::__cxx11::basic_string, std::allocator > const&)': -config.cpp:(.text+0x11064): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: config.cpp:(.text+0x111cc): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: config.cpp:(.text+0x1136c): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: src/yuzu/CMakeFiles/yuzu.dir/configuration/configure_per_game.cpp.o:configure_per_game.cpp:(.text+0x1348): more undefined references to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' follow -/usr/local/bin/ld: src/core/libcore.a(core.cpp.o): in function `void fmt::v7::detail::format_value(fmt::v7::detail::buffer&, Loader::ResultStatus const&, fmt::v7::detail::locale_ref)': -core.cpp:(.text._ZN3fmt2v76detail12format_valueIcN6Loader12ResultStatusEEEvRNS1_6bufferIT_EERKT0_NS1_10locale_refE[_ZN3fmt2v76detail12format_valueIcN6Loader12ResultStatusEEEvRNS1_6bufferIT_EERKT0_NS1_10locale_refE]+0x10f): undefined reference to `std::locale fmt::v7::detail::locale_ref::get() const' -/usr/local/bin/ld: src/core/libcore.a(key_manager.cpp.o): in function `Core::Crypto::KeyManager::SetKey(Core::Crypto::S128KeyType, std::array, unsigned long, unsigned long)': -key_manager.cpp:(.text+0x6d22): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: key_manager.cpp:(.text+0x6e8f): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: key_manager.cpp:(.text+0x6fc1): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: key_manager.cpp:(.text+0x7057): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: key_manager.cpp:(.text+0x709d): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: src/core/libcore.a(key_manager.cpp.o):key_manager.cpp:(.text+0x70e3): more undefined references to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' follow -/usr/local/bin/ld: src/core/libcore.a(boxcat.cpp.o): in function `void fmt::v7::detail::value, char> >::format_custom_arg >(void const*, fmt::v7::basic_format_parse_context&, fmt::v7::basic_format_context, char>&)': -boxcat.cpp:(.text+0x4492): undefined reference to `std::locale fmt::v7::detail::locale_ref::get() const' -/usr/local/bin/ld: src/core/libcore.a(boxcat.cpp.o): in function `Service::BCAT::Boxcat::Client::DownloadInternal(std::__cxx11::basic_string, std::allocator > const&, unsigned int, std::__cxx11::basic_string, std::allocator > const&)': -boxcat.cpp:(.text+0x4fc4): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: src/core/libcore.a(boxcat.cpp.o): in function `Service::BCAT::SynchronizeInternal(Service::AM::Applets::AppletManager&, std::function (unsigned long)>, Service::BCAT::TitleIDVersion, Service::BCAT::ProgressServiceBackend&, std::optional, std::allocator > >)': -boxcat.cpp:(.text+0x5c80): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: boxcat.cpp:(.text+0x5d4b): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: src/core/libcore.a(boxcat.cpp.o): in function `Service::BCAT::Boxcat::GetLaunchParameter(Service::BCAT::TitleIDVersion)': -boxcat.cpp:(.text+0x6e98): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: boxcat.cpp:(.text+0x70ac): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: src/core/libcore.a(bis_factory.cpp.o):bis_factory.cpp:(.text+0xacf): more undefined references to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' follow -/usr/local/bin/ld: externals/dynarmic/src/libdynarmic.a(basic_block.cpp.o): in function `void fmt::v7::detail::format_value(fmt::v7::detail::buffer&, Dynarmic::IR::LocationDescriptor const&, fmt::v7::detail::locale_ref)': -basic_block.cpp:(.text._ZN3fmt2v76detail12format_valueIcN8Dynarmic2IR18LocationDescriptorEEEvRNS1_6bufferIT_EERKT0_NS1_10locale_refE[_ZN3fmt2v76detail12format_valueIcN8Dynarmic2IR18LocationDescriptorEEEvRNS1_6bufferIT_EERKT0_NS1_10locale_refE]+0x10f): undefined reference to `std::locale fmt::v7::detail::locale_ref::get() const' -/usr/local/bin/ld: externals/dynarmic/src/libdynarmic.a(location_descriptor.cpp.o): in function `Dynarmic::IR::operator<<(std::ostream&, Dynarmic::IR::LocationDescriptor const&)': -location_descriptor.cpp:(.text+0x37): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: externals/dynarmic/src/libdynarmic.a(a32_emit_x64.cpp.o): in function `Dynarmic::Backend::X64::A32EmitX64::LocationDescriptorToFriendlyName[abi:cxx11](Dynarmic::IR::LocationDescriptor const&) const': -a32_emit_x64.cpp:(.text+0x69c): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: externals/dynarmic/src/libdynarmic.a(a32_emit_x64.cpp.o): in function `Dynarmic::Backend::X64::A32EmitX64::GenFastmemFallbacks()': -a32_emit_x64.cpp:(.text+0x4f76): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: a32_emit_x64.cpp:(.text+0x5366): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: externals/dynarmic/src/libdynarmic.a(a64_emit_x64.cpp.o): in function `Dynarmic::Backend::X64::A64EmitX64::LocationDescriptorToFriendlyName[abi:cxx11](Dynarmic::IR::LocationDescriptor const&) const': -a64_emit_x64.cpp:(.text+0x65): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' -/usr/local/bin/ld: externals/dynarmic/src/libdynarmic.a(a64_emit_x64.cpp.o):a64_emit_x64.cpp:(.text+0x533d): more undefined references to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' follow -/usr/local/bin/ld: externals/dynarmic/src/libdynarmic.a(microinstruction.cpp.o): in function `void fmt::v7::detail::format_value(fmt::v7::detail::buffer&, Dynarmic::IR::Opcode const&, fmt::v7::detail::locale_ref)': -microinstruction.cpp:(.text._ZN3fmt2v76detail12format_valueIcN8Dynarmic2IR6OpcodeEEEvRNS1_6bufferIT_EERKT0_NS1_10locale_refE[_ZN3fmt2v76detail12format_valueIcN8Dynarmic2IR6OpcodeEEEvRNS1_6bufferIT_EERKT0_NS1_10locale_refE]+0x10f): undefined reference to `std::locale fmt::v7::detail::locale_ref::get() const' -/usr/local/bin/ld: externals/dynarmic/src/libdynarmic.a(microinstruction.cpp.o): in function `void fmt::v7::detail::format_value(fmt::v7::detail::buffer&, Dynarmic::IR::Type const&, fmt::v7::detail::locale_ref)': -microinstruction.cpp:(.text._ZN3fmt2v76detail12format_valueIcN8Dynarmic2IR4TypeEEEvRNS1_6bufferIT_EERKT0_NS1_10locale_refE[_ZN3fmt2v76detail12format_valueIcN8Dynarmic2IR4TypeEEEvRNS1_6bufferIT_EERKT0_NS1_10locale_refE]+0x10f): undefined reference to `std::locale fmt::v7::detail::locale_ref::get() const' -collect2: error: ld returned 1 exit status - ---- CMakeLists.txt.orig 2022-12-05 17:26:09 UTC -+++ CMakeLists.txt -@@ -200,7 +200,6 @@ find_package(enet 1.3) - # ======================================================================= - - find_package(enet 1.3) --find_package(fmt 9 REQUIRED) - find_package(inih) - find_package(lz4 1.8 REQUIRED) - find_package(nlohmann_json 3.8 REQUIRED) diff --git a/emulators/yuzu/files/patch-libstdc++ b/emulators/yuzu/files/patch-libstdc++ new file mode 100644 index 000000000000..b20ce1016bf9 --- /dev/null +++ b/emulators/yuzu/files/patch-libstdc++ @@ -0,0 +1,106 @@ +Partially revert https://github.com/yuzu-emu/yuzu/commit/8e17b5469fc7 + +/usr/local/bin/ld: src/yuzu/CMakeFiles/yuzu.dir/about_dialog.cpp.o: in function `AboutDialog::AboutDialog(QWidget*)': +about_dialog.cpp:(.text+0x3d3): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: src/yuzu/CMakeFiles/yuzu.dir/applets/web_browser.cpp.o: in function `QtNXWebEngineView::LoadExtractedFonts()': +web_browser.cpp:(.text+0x14e7): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: src/yuzu/CMakeFiles/yuzu.dir/configuration/config.cpp.o: in function `Config::Initialize(std::__cxx11::basic_string, std::allocator > const&)': +config.cpp:(.text+0x11064): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: config.cpp:(.text+0x111cc): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: config.cpp:(.text+0x1136c): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: src/yuzu/CMakeFiles/yuzu.dir/configuration/configure_per_game.cpp.o:configure_per_game.cpp:(.text+0x1348): more undefined references to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' follow +/usr/local/bin/ld: src/core/libcore.a(core.cpp.o): in function `void fmt::v7::detail::format_value(fmt::v7::detail::buffer&, Loader::ResultStatus const&, fmt::v7::detail::locale_ref)': +core.cpp:(.text._ZN3fmt2v76detail12format_valueIcN6Loader12ResultStatusEEEvRNS1_6bufferIT_EERKT0_NS1_10locale_refE[_ZN3fmt2v76detail12format_valueIcN6Loader12ResultStatusEEEvRNS1_6bufferIT_EERKT0_NS1_10locale_refE]+0x10f): undefined reference to `std::locale fmt::v7::detail::locale_ref::get() const' +/usr/local/bin/ld: src/core/libcore.a(key_manager.cpp.o): in function `Core::Crypto::KeyManager::SetKey(Core::Crypto::S128KeyType, std::array, unsigned long, unsigned long)': +key_manager.cpp:(.text+0x6d22): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: key_manager.cpp:(.text+0x6e8f): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: key_manager.cpp:(.text+0x6fc1): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: key_manager.cpp:(.text+0x7057): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: key_manager.cpp:(.text+0x709d): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: src/core/libcore.a(key_manager.cpp.o):key_manager.cpp:(.text+0x70e3): more undefined references to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' follow +/usr/local/bin/ld: src/core/libcore.a(boxcat.cpp.o): in function `void fmt::v7::detail::value, char> >::format_custom_arg >(void const*, fmt::v7::basic_format_parse_context&, fmt::v7::basic_format_context, char>&)': +boxcat.cpp:(.text+0x4492): undefined reference to `std::locale fmt::v7::detail::locale_ref::get() const' +/usr/local/bin/ld: src/core/libcore.a(boxcat.cpp.o): in function `Service::BCAT::Boxcat::Client::DownloadInternal(std::__cxx11::basic_string, std::allocator > const&, unsigned int, std::__cxx11::basic_string, std::allocator > const&)': +boxcat.cpp:(.text+0x4fc4): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: src/core/libcore.a(boxcat.cpp.o): in function `Service::BCAT::SynchronizeInternal(Service::AM::Applets::AppletManager&, std::function (unsigned long)>, Service::BCAT::TitleIDVersion, Service::BCAT::ProgressServiceBackend&, std::optional, std::allocator > >)': +boxcat.cpp:(.text+0x5c80): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: boxcat.cpp:(.text+0x5d4b): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: src/core/libcore.a(boxcat.cpp.o): in function `Service::BCAT::Boxcat::GetLaunchParameter(Service::BCAT::TitleIDVersion)': +boxcat.cpp:(.text+0x6e98): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: boxcat.cpp:(.text+0x70ac): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: src/core/libcore.a(bis_factory.cpp.o):bis_factory.cpp:(.text+0xacf): more undefined references to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' follow +/usr/local/bin/ld: externals/dynarmic/src/libdynarmic.a(basic_block.cpp.o): in function `void fmt::v7::detail::format_value(fmt::v7::detail::buffer&, Dynarmic::IR::LocationDescriptor const&, fmt::v7::detail::locale_ref)': +basic_block.cpp:(.text._ZN3fmt2v76detail12format_valueIcN8Dynarmic2IR18LocationDescriptorEEEvRNS1_6bufferIT_EERKT0_NS1_10locale_refE[_ZN3fmt2v76detail12format_valueIcN8Dynarmic2IR18LocationDescriptorEEEvRNS1_6bufferIT_EERKT0_NS1_10locale_refE]+0x10f): undefined reference to `std::locale fmt::v7::detail::locale_ref::get() const' +/usr/local/bin/ld: externals/dynarmic/src/libdynarmic.a(location_descriptor.cpp.o): in function `Dynarmic::IR::operator<<(std::ostream&, Dynarmic::IR::LocationDescriptor const&)': +location_descriptor.cpp:(.text+0x37): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: externals/dynarmic/src/libdynarmic.a(a32_emit_x64.cpp.o): in function `Dynarmic::Backend::X64::A32EmitX64::LocationDescriptorToFriendlyName[abi:cxx11](Dynarmic::IR::LocationDescriptor const&) const': +a32_emit_x64.cpp:(.text+0x69c): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: externals/dynarmic/src/libdynarmic.a(a32_emit_x64.cpp.o): in function `Dynarmic::Backend::X64::A32EmitX64::GenFastmemFallbacks()': +a32_emit_x64.cpp:(.text+0x4f76): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: a32_emit_x64.cpp:(.text+0x5366): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: externals/dynarmic/src/libdynarmic.a(a64_emit_x64.cpp.o): in function `Dynarmic::Backend::X64::A64EmitX64::LocationDescriptorToFriendlyName[abi:cxx11](Dynarmic::IR::LocationDescriptor const&) const': +a64_emit_x64.cpp:(.text+0x65): undefined reference to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' +/usr/local/bin/ld: externals/dynarmic/src/libdynarmic.a(a64_emit_x64.cpp.o):a64_emit_x64.cpp:(.text+0x533d): more undefined references to `fmt::v7::detail::vformat[abi:cxx11](fmt::v7::basic_string_view, fmt::v7::format_args)' follow +/usr/local/bin/ld: externals/dynarmic/src/libdynarmic.a(microinstruction.cpp.o): in function `void fmt::v7::detail::format_value(fmt::v7::detail::buffer&, Dynarmic::IR::Opcode const&, fmt::v7::detail::locale_ref)': +microinstruction.cpp:(.text._ZN3fmt2v76detail12format_valueIcN8Dynarmic2IR6OpcodeEEEvRNS1_6bufferIT_EERKT0_NS1_10locale_refE[_ZN3fmt2v76detail12format_valueIcN8Dynarmic2IR6OpcodeEEEvRNS1_6bufferIT_EERKT0_NS1_10locale_refE]+0x10f): undefined reference to `std::locale fmt::v7::detail::locale_ref::get() const' +/usr/local/bin/ld: externals/dynarmic/src/libdynarmic.a(microinstruction.cpp.o): in function `void fmt::v7::detail::format_value(fmt::v7::detail::buffer&, Dynarmic::IR::Type const&, fmt::v7::detail::locale_ref)': +microinstruction.cpp:(.text._ZN3fmt2v76detail12format_valueIcN8Dynarmic2IR4TypeEEEvRNS1_6bufferIT_EERKT0_NS1_10locale_refE[_ZN3fmt2v76detail12format_valueIcN8Dynarmic2IR4TypeEEEvRNS1_6bufferIT_EERKT0_NS1_10locale_refE]+0x10f): undefined reference to `std::locale fmt::v7::detail::locale_ref::get() const' +collect2: error: ld returned 1 exit status + +/usr/local/bin/ld: src/yuzu_cmd/CMakeFiles/yuzu-cmd.dir/config.cpp.o: in function `void Config::ReadSetting(std::__cxx11::basic_string, std::allocator > const&, Settings::Setting&)': +config.cpp:(.text+0x5b6): undefined reference to `INIReader::GetBoolean(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, bool) const' +/usr/local/bin/ld: src/yuzu_cmd/CMakeFiles/yuzu-cmd.dir/config.cpp.o: in function `void Config::ReadSetting, std::allocator >, false>(std::__cxx11::basic_string, std::allocator > const&, Settings::Setting, std::allocator >, false>&)': +config.cpp:(.text+0x62b): undefined reference to `INIReader::Get(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) const' +/usr/local/bin/ld: src/yuzu_cmd/CMakeFiles/yuzu-cmd.dir/config.cpp.o: in function `Config::LoadINI(std::__cxx11::basic_string, std::allocator > const&, bool)': +config.cpp:(.text+0x857): undefined reference to `INIReader::INIReader(std::__cxx11::basic_string, std::allocator > const&)' +/usr/local/bin/ld: src/yuzu_cmd/CMakeFiles/yuzu-cmd.dir/config.cpp.o: in function `Config::ReadValues()': +config.cpp:(.text+0x1280): undefined reference to `INIReader::Get(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) const' +/usr/local/bin/ld: config.cpp:(.text+0x163d): undefined reference to `INIReader::Get(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) const' +/usr/local/bin/ld: config.cpp:(.text+0x181a): undefined reference to `INIReader::Get(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) const' +/usr/local/bin/ld: config.cpp:(.text+0x19bd): undefined reference to `INIReader::GetBoolean(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, bool) const' +/usr/local/bin/ld: config.cpp:(.text+0x1ee8): undefined reference to `INIReader::Get(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) const' +/usr/local/bin/ld: config.cpp:(.text+0x2496): undefined reference to `INIReader::Get(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) const' +/usr/local/bin/ld: config.cpp:(.text+0x269d): undefined reference to `INIReader::GetBoolean(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, bool) const' +/usr/local/bin/ld: config.cpp:(.text+0x26f4): undefined reference to `INIReader::GetInteger(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, long) const' +/usr/local/bin/ld: config.cpp:(.text+0x274e): undefined reference to `INIReader::GetInteger(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, long) const' +/usr/local/bin/ld: config.cpp:(.text+0x27a8): undefined reference to `INIReader::GetInteger(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, long) const' +/usr/local/bin/ld: config.cpp:(.text+0x27ff): undefined reference to `INIReader::GetInteger(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, long) const' +/usr/local/bin/ld: config.cpp:(.text+0x293e): undefined reference to `INIReader::Get(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) const' +/usr/local/bin/ld: config.cpp:(.text+0x2b55): undefined reference to `INIReader::GetInteger(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, long) const' +/usr/local/bin/ld: config.cpp:(.text+0x2ddd): undefined reference to `INIReader::Get(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) const' +/usr/local/bin/ld: config.cpp:(.text+0x3201): undefined reference to `INIReader::Get(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) const' +/usr/local/bin/ld: config.cpp:(.text+0x3357): undefined reference to `INIReader::Get(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) const' +/usr/local/bin/ld: config.cpp:(.text+0x3498): undefined reference to `INIReader::Get(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) const' +/usr/local/bin/ld: config.cpp:(.text+0x35d9): undefined reference to `INIReader::Get(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) const' +/usr/local/bin/ld: config.cpp:(.text+0x37ce): undefined reference to `INIReader::GetInteger(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, long) const' +/usr/local/bin/ld: config.cpp:(.text+0x3842): undefined reference to `INIReader::GetBoolean(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, bool) const' +/usr/local/bin/ld: config.cpp:(.text+0x38a8): undefined reference to `INIReader::GetInteger(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, long) const' +/usr/local/bin/ld: config.cpp:(.text+0x3933): undefined reference to `INIReader::GetBoolean(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, bool) const' +/usr/local/bin/ld: config.cpp:(.text+0x3995): undefined reference to `INIReader::GetInteger(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, long) const' +/usr/local/bin/ld: config.cpp:(.text+0x3a15): undefined reference to `INIReader::GetInteger(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, long) const' +/usr/local/bin/ld: config.cpp:(.text+0x3a95): undefined reference to `INIReader::GetInteger(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, long) const' +/usr/local/bin/ld: config.cpp:(.text+0x3b15): undefined reference to `INIReader::GetInteger(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, long) const' +/usr/local/bin/ld: config.cpp:(.text+0x3bf6): undefined reference to `INIReader::GetInteger(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, long) const' +/usr/local/bin/ld: src/yuzu_cmd/CMakeFiles/yuzu-cmd.dir/config.cpp.o:config.cpp:(.text+0x402f): more undefined references to `INIReader::GetInteger(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, long) const' follow +/usr/local/bin/ld: src/yuzu_cmd/CMakeFiles/yuzu-cmd.dir/config.cpp.o: in function `Config::ReadValues()': +config.cpp:(.text+0x4ac4): undefined reference to `INIReader::Get(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) const' +/usr/local/bin/ld: config.cpp:(.text+0x4b72): undefined reference to `INIReader::GetBoolean(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, bool) const' +/usr/local/bin/ld: config.cpp:(.text+0x4db3): undefined reference to `INIReader::GetInteger(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, long) const' +/usr/local/bin/ld: config.cpp:(.text+0x4e31): undefined reference to `INIReader::Get(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) const' +/usr/local/bin/ld: config.cpp:(.text+0x522d): undefined reference to `INIReader::Get(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) const' +/usr/local/bin/ld: config.cpp:(.text+0x5ec8): undefined reference to `INIReader::GetInteger(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&, long) const' +/usr/local/bin/ld: src/yuzu_cmd/CMakeFiles/yuzu-cmd.dir/config.cpp.o: in function `Config::Config(std::optional)': +config.cpp:(.text+0x6e12): undefined reference to `INIReader::INIReader(std::__cxx11::basic_string, std::allocator > const&)' +collect2: error: ld returned 1 exit status + +--- CMakeLists.txt.orig 2022-12-05 17:26:09 UTC ++++ CMakeLists.txt +@@ -198,8 +198,6 @@ find_package(enet 1.3) + # ======================================================================= + + find_package(enet 1.3) +-find_package(fmt 9 REQUIRED) +-find_package(inih) + find_package(libusb 1.0.24) + find_package(lz4 REQUIRED) + find_package(nlohmann_json 3.8 REQUIRED) diff --git a/emulators/yuzu/files/patch-libusb b/emulators/yuzu/files/patch-libusb index f1595f856ace..5f4e087c9064 100644 --- a/emulators/yuzu/files/patch-libusb +++ b/emulators/yuzu/files/patch-libusb @@ -1,16 +1,13 @@ FreeBSD hasn't updated version string since 2014 despite improving compatibility with newer versions of the reference implementation. -- Could NOT find libusb: Found unsuitable version "1.0.13", but required is at least "1.0.24" (found /usr/lib/libusb.so) --- CMakeLists.txt.orig 2022-12-07 02:08:14 UTC +++ CMakeLists.txt -@@ -200,7 +200,7 @@ - find_package(enet 1.3) - find_package(fmt 9 REQUIRED) - find_package(inih) +@@ -203,4 +203,4 @@ -find_package(libusb 1.0.24) +find_package(libusb) find_package(lz4 REQUIRED) find_package(nlohmann_json 3.8 REQUIRED) find_package(Opus 1.3)