1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-26 09:46:09 +00:00

emulators/yuzu: switch FreeBSD 11.2/12.0 to bundled libc++

This commit is contained in:
Jan Beich 2019-12-12 01:14:54 +00:00
parent f89523c517
commit 87fadc9c0d
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=519853
4 changed files with 12 additions and 240 deletions

View File

@ -1,6 +1,6 @@
# $FreeBSD$
PORTREVISION= 1
PORTREVISION= 2
PKGNAMESUFFIX= -qt5
MASTERDIR= ${.CURDIR}/../yuzu

View File

@ -2,7 +2,7 @@
PORTNAME= yuzu
PORTVERSION= s20191209
PORTREVISION?= 1
PORTREVISION?= 2
CATEGORIES= emulators
MAINTAINER= jbeich@FreeBSD.org
@ -55,6 +55,14 @@ USE_SDL= sdl2
LDFLAGS+= -Wl,--as-needed # Qt5Network
TEST_TARGET= test
# XXX Remove after FreeBSD 11.2/12.0 reach EOL i.e., around 2020-02-01
#.if make(makesum) || (!exists(/usr/include/c++/v1/charconv) && exists(/usr/lib/libc++.so))
MASTER_SITES+= https://releases.llvm.org/${LLVM_VER}/:libcxx
DISTFILES+= libcxx-${LLVM_VER}.src.tar.xz:libcxx
CXXFLAGS+= -nostdinc++ -isystem${WRKDIR}/libcxx-${LLVM_VER}.src/include
LLVM_VER= 8.0.0 # same as FreeBSD 11.3
#.endif
OPTIONS_DEFINE= ALSA PULSEAUDIO JACK SNDIO
OPTIONS_DEFAULT=ALSA PULSEAUDIO JACK SNDIO
OPTIONS_MULTI= GUI

View File

@ -1,4 +1,6 @@
TIMESTAMP = 1575862105
SHA256 (libcxx-8.0.0.src.tar.xz) = c2902675e7c84324fb2c1e45489220f250ede016cc3117186785d9dc291f9de2
SIZE (libcxx-8.0.0.src.tar.xz) = 1752308
SHA256 (yuzu-emu-yuzu-s20191209-faf5ae6a5_GH0.tar.gz) = 3c6715bb1cf233c6821241142eec7f7bdd834daae677748ecf9f6b843c8b3138
SIZE (yuzu-emu-yuzu-s20191209-faf5ae6a5_GH0.tar.gz) = 2616667
SHA256 (yuzu-emu-unicorn-1.0.1-153-g73f45735_GH0.tar.gz) = 8f7b4d8eb998c2a4c146268d83b44fc22ca8d4d276f26d6af1071e51f4b5bd4f

View File

@ -1,238 +0,0 @@
Drop after FreeBSD 12.0 EOL. See https://reviews.llvm.org/rL332768
externals/dynarmic/src/frontend/A64/types.cpp:18:33: fatal error: no viable constructor or deduction guide for deduction of template arguments of 'array'
static constexpr std::array cond_strs = {
^
/usr/include/c++/v1/__tuple:223:64: note: candidate function template not viable: requires 0 arguments, but 16 were provided
template <class _Tp, size_t _Size> struct _LIBCPP_TEMPLATE_VIS array;
^
/usr/include/c++/v1/__tuple:223:64: note: candidate function template not viable: requires 1 argument, but 16 were provided
--- externals/dynarmic/src/frontend/A32/disassembler/disassembler_arm.cpp.orig 2019-08-14 20:14:23 UTC
+++ externals/dynarmic/src/frontend/A32/disassembler/disassembler_arm.cpp
@@ -18,6 +18,16 @@
#include "frontend/A32/disassembler/disassembler.h"
#include "frontend/A32/types.h"
+#if defined(_LIBCPP_VERSION) && _LIBCPP_VERSION < 7000
+_LIBCPP_BEGIN_NAMESPACE_STD
+template<class _Tp, class... _Args,
+ class = typename enable_if<(is_same_v<_Tp, _Args> && ...), void>::type
+ >
+array(_Tp, _Args...)
+ -> array<_Tp, 1 + sizeof...(_Args)>;
+_LIBCPP_END_NAMESPACE_STD
+#endif
+
namespace Dynarmic::A32 {
class DisassemblerVisitor {
--- externals/dynarmic/src/frontend/A32/types.cpp.orig 2019-08-14 20:14:23 UTC
+++ externals/dynarmic/src/frontend/A32/types.cpp
@@ -10,6 +10,16 @@
#include "common/bit_util.h"
#include "frontend/A32/types.h"
+#if defined(_LIBCPP_VERSION) && _LIBCPP_VERSION < 7000
+_LIBCPP_BEGIN_NAMESPACE_STD
+template<class _Tp, class... _Args,
+ class = typename enable_if<(is_same_v<_Tp, _Args> && ...), void>::type
+ >
+array(_Tp, _Args...)
+ -> array<_Tp, 1 + sizeof...(_Args)>;
+_LIBCPP_END_NAMESPACE_STD
+#endif
+
namespace Dynarmic::A32 {
const char* CondToString(Cond cond, bool explicit_al) {
--- externals/dynarmic/src/frontend/A64/types.cpp.orig 2019-08-14 20:14:23 UTC
+++ externals/dynarmic/src/frontend/A64/types.cpp
@@ -11,6 +11,16 @@
#include "frontend/A64/types.h"
+#if defined(_LIBCPP_VERSION) && _LIBCPP_VERSION < 7000
+_LIBCPP_BEGIN_NAMESPACE_STD
+template<class _Tp, class... _Args,
+ class = typename enable_if<(is_same_v<_Tp, _Args> && ...), void>::type
+ >
+array(_Tp, _Args...)
+ -> array<_Tp, 1 + sizeof...(_Args)>;
+_LIBCPP_END_NAMESPACE_STD
+#endif
+
namespace Dynarmic::A64 {
const char* CondToString(Cond cond) {
--- externals/dynarmic/src/frontend/ir/type.cpp.orig 2019-08-14 20:14:23 UTC
+++ externals/dynarmic/src/frontend/ir/type.cpp
@@ -10,6 +10,16 @@
#include "frontend/ir/type.h"
+#if defined(_LIBCPP_VERSION) && _LIBCPP_VERSION < 7000
+_LIBCPP_BEGIN_NAMESPACE_STD
+template<class _Tp, class... _Args,
+ class = typename enable_if<(is_same_v<_Tp, _Args> && ...), void>::type
+ >
+array(_Tp, _Args...)
+ -> array<_Tp, 1 + sizeof...(_Args)>;
+_LIBCPP_END_NAMESPACE_STD
+#endif
+
namespace Dynarmic::IR {
std::string GetNameOf(Type type) {
--- src/core/file_sys/card_image.cpp.orig 2019-11-25 04:03:51 UTC
+++ src/core/file_sys/card_image.cpp
@@ -19,6 +19,16 @@
#include "core/file_sys/vfs_vector.h"
#include "core/loader/loader.h"
+#if defined(_LIBCPP_VERSION) && _LIBCPP_VERSION < 7000
+_LIBCPP_BEGIN_NAMESPACE_STD
+template<class _Tp, class... _Args,
+ class = typename enable_if<(is_same_v<_Tp, _Args> && ...), void>::type
+ >
+array(_Tp, _Args...)
+ -> array<_Tp, 1 + sizeof...(_Args)>;
+_LIBCPP_END_NAMESPACE_STD
+#endif
+
namespace FileSys {
constexpr u64 GAMECARD_CERTIFICATE_OFFSET = 0x7000;
--- src/video_core/renderer_opengl/gl_device.cpp.orig 2019-11-25 04:03:51 UTC
+++ src/video_core/renderer_opengl/gl_device.cpp
@@ -15,6 +15,16 @@
#include "video_core/renderer_opengl/gl_device.h"
#include "video_core/renderer_opengl/gl_resource_manager.h"
+#if defined(_LIBCPP_VERSION) && _LIBCPP_VERSION < 7000
+_LIBCPP_BEGIN_NAMESPACE_STD
+template<class _Tp, class... _Args,
+ class = typename enable_if<(is_same_v<_Tp, _Args> && ...), void>::type
+ >
+array(_Tp, _Args...)
+ -> array<_Tp, 1 + sizeof...(_Args)>;
+_LIBCPP_END_NAMESPACE_STD
+#endif
+
namespace OpenGL {
namespace {
--- src/video_core/renderer_opengl/gl_shader_decompiler.cpp.orig 2019-11-25 04:03:51 UTC
+++ src/video_core/renderer_opengl/gl_shader_decompiler.cpp
@@ -24,6 +24,16 @@
#include "video_core/shader/node.h"
#include "video_core/shader/shader_ir.h"
+#if defined(_LIBCPP_VERSION) && _LIBCPP_VERSION < 7000
+_LIBCPP_BEGIN_NAMESPACE_STD
+template<class _Tp, class... _Args,
+ class = typename enable_if<(is_same_v<_Tp, _Args> && ...), void>::type
+ >
+array(_Tp, _Args...)
+ -> array<_Tp, 1 + sizeof...(_Args)>;
+_LIBCPP_END_NAMESPACE_STD
+#endif
+
namespace OpenGL::GLShader {
namespace {
--- src/video_core/renderer_vulkan/vk_device.cpp.orig 2019-11-25 04:03:51 UTC
+++ src/video_core/renderer_vulkan/vk_device.cpp
@@ -11,6 +11,16 @@
#include "video_core/renderer_vulkan/declarations.h"
#include "video_core/renderer_vulkan/vk_device.h"
+#if defined(_LIBCPP_VERSION) && _LIBCPP_VERSION < 7000
+_LIBCPP_BEGIN_NAMESPACE_STD
+template<class _Tp, class... _Args,
+ class = typename enable_if<(is_same_v<_Tp, _Args> && ...), void>::type
+ >
+array(_Tp, _Args...)
+ -> array<_Tp, 1 + sizeof...(_Args)>;
+_LIBCPP_END_NAMESPACE_STD
+#endif
+
namespace Vulkan {
namespace {
--- src/video_core/renderer_vulkan/vk_shader_decompiler.cpp.orig 2019-11-25 04:03:51 UTC
+++ src/video_core/renderer_vulkan/vk_shader_decompiler.cpp
@@ -23,6 +23,16 @@
#include "video_core/shader/node.h"
#include "video_core/shader/shader_ir.h"
+#if defined(_LIBCPP_VERSION) && _LIBCPP_VERSION < 7000
+_LIBCPP_BEGIN_NAMESPACE_STD
+template<class _Tp, class... _Args,
+ class = typename enable_if<(is_same_v<_Tp, _Args> && ...), void>::type
+ >
+array(_Tp, _Args...)
+ -> array<_Tp, 1 + sizeof...(_Args)>;
+_LIBCPP_END_NAMESPACE_STD
+#endif
+
namespace Vulkan::VKShader {
using Sirit::Id;
--- src/video_core/shader/shader_ir.cpp.orig 2019-11-25 04:03:51 UTC
+++ src/video_core/shader/shader_ir.cpp
@@ -13,6 +13,16 @@
#include "video_core/shader/node_helper.h"
#include "video_core/shader/shader_ir.h"
+#if defined(_LIBCPP_VERSION) && _LIBCPP_VERSION < 7000
+_LIBCPP_BEGIN_NAMESPACE_STD
+template<class _Tp, class... _Args,
+ class = typename enable_if<(is_same_v<_Tp, _Args> && ...), void>::type
+ >
+array(_Tp, _Args...)
+ -> array<_Tp, 1 + sizeof...(_Args)>;
+_LIBCPP_END_NAMESPACE_STD
+#endif
+
namespace VideoCommon::Shader {
using Tegra::Shader::Attribute;
--- src/yuzu/configuration/configure_gamelist.cpp.orig 2019-11-25 04:03:51 UTC
+++ src/yuzu/configuration/configure_gamelist.cpp
@@ -11,6 +11,16 @@
#include "yuzu/configuration/configure_gamelist.h"
#include "yuzu/uisettings.h"
+#if defined(_LIBCPP_VERSION) && _LIBCPP_VERSION < 7000
+_LIBCPP_BEGIN_NAMESPACE_STD
+template<class _Tp, class... _Args,
+ class = typename enable_if<(is_same_v<_Tp, _Args> && ...), void>::type
+ >
+array(_Tp, _Args...)
+ -> array<_Tp, 1 + sizeof...(_Args)>;
+_LIBCPP_END_NAMESPACE_STD
+#endif
+
namespace {
constexpr std::array default_icon_sizes{
std::make_pair(0, QT_TR_NOOP("None")),
--- src/yuzu/util/util.cpp.orig 2019-11-25 04:03:51 UTC
+++ src/yuzu/util/util.cpp
@@ -7,6 +7,16 @@
#include <QPainter>
#include "yuzu/util/util.h"
+#if defined(_LIBCPP_VERSION) && _LIBCPP_VERSION < 7000
+_LIBCPP_BEGIN_NAMESPACE_STD
+template<class _Tp, class... _Args,
+ class = typename enable_if<(is_same_v<_Tp, _Args> && ...), void>::type
+ >
+array(_Tp, _Args...)
+ -> array<_Tp, 1 + sizeof...(_Args)>;
+_LIBCPP_END_NAMESPACE_STD
+#endif
+
QFont GetMonospaceFont() {
QFont font(QStringLiteral("monospace"));
// Automatic fallback to a monospace font on on platforms without a font called "monospace"