1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-18 19:49:40 +00:00

Update to version 5.0.8715

This commit is contained in:
Ganael LAPLANCHE 2018-09-20 18:13:03 +00:00
parent f5e3b8aa28
commit 580767bcc4
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=480187
11 changed files with 482 additions and 687 deletions

View File

@ -2,55 +2,67 @@
# $FreeBSD$
PORTNAME= dolphin-emu
PORTVERSION= 5.0
PORTREVISION= 26
PORTVERSION= 5.0.8715
CATEGORIES= emulators
MAINTAINER= martymac@FreeBSD.org
COMMENT= Gamecube and Wii Emulator
LICENSE= GPLv2
LICENSE= GPLv2+
LICENSE_FILE= ${WRKSRC}/license.txt
BROKEN_FreeBSD_10= conflicting types for '__hash_table<_Tp, _Hash, _Equal, _Alloc>'
# Notes on dependencies:
# - keep enet from Externals as Dolphin's version diverges
# - xxhash and SOIL are not (yet?) in ports and built from Externals
# - skip ALSA (emulated), ao (buggy) and bluez support
# - alsa support disabled (not optimal)
# - enet and soundtouch come from Externals/ as Dolphin's versions diverge
# (see comments in CMakeLists.txt)
# Various problems that may be addressed in the future:
# - xxhash comes from Externals/ as it cannot be properly detected yet
# - gtest detection is missing (Externals/ version enforced by CMakeLists.txt)
# - cubeb comes from Externals/ as it is not available from ports yet
# - sdl2 support is buggy and leads to an infinite wait when Dolphin starts:
# ciface::SDL::PopulateDevices () at Source/Core/InputCommon/ControllerInterface/SDL/SDL.cpp:177
LIB_DEPENDS= libpulse.so:audio/pulseaudio \
libavcodec.so:multimedia/ffmpeg \
libavdevice.so:multimedia/ffmpeg \
libavfilter.so:multimedia/ffmpeg \
libavformat.so:multimedia/ffmpeg \
libswscale.so:multimedia/ffmpeg \
libavutil.so:multimedia/ffmpeg \
libportaudio.so:audio/portaudio \
libswresample.so:multimedia/ffmpeg \
libswscale.so:multimedia/ffmpeg \
libpugixml.so:textproc/pugixml \
liblzo2.so:archivers/lzo2 \
libpng.so:graphics/png \
libSoundTouch.so:audio/soundtouch \
libjack.so:audio/jack \
libsndio.so:audio/sndio \
libsfml-system.so:devel/sfml \
libminiupnpc.so:net/miniupnpc \
libmbedtls.so:security/mbedtls \
libcurl.so:ftp/curl \
libgtest.so:devel/googletest
libhidapi.so:comms/hidapi
LLD_UNSAFE= yes
USES= cmake compiler:c++11-lib gnome iconv openal pkgconfig
USES= cmake compiler:c++11-lib desktop-file-utils iconv pkgconfig \
qmake qt:5
USE_GITHUB= yes
GH_PROJECT= dolphin
GH_TAGNAME= 5f0d825
USE_GL= gl glew glu
USE_GNOME= atk cairo glib20 gdkpixbuf2 gtk20 pango
USE_SDL= sdl2
USE_WX= 3.0+
USE_XORG= ice sm x11 xext xi xrandr
USE_QT= buildtools_build core gui widgets
CMAKE_ARGS+= -DTRY_X11:BOOL=ON \
-DUSE_UPNP:BOOL=ON \
-DDISABLE_WX:BOOL=OFF \
-DUSE_SHARED_GTEST:BOOL=ON \
-DENABLE_PCH:BOOL=OFF \
-DENABLE_QT:BOOL=ON \
-DENABLE_ALSA:BOOL=OFF \
-DENABLE_PULSEAUDIO:BOOL=ON \
-DUSE_DISCORD_PRESENCE:BOOL=OFF \
-DENABLE_SDL:BOOL=OFF \
-DCMAKE_REQUIRED_INCLUDES:PATH="${LOCALBASE}/include" \
-DCMAKE_REQUIRED_FLAGS:STRING="-L${LOCALBASE}/lib" \
-DCMAKE_INSTALL_RPATH_USE_LINK_PATH:BOOL=ON
-DCMAKE_REQUIRED_FLAGS:STRING="-L${LOCALBASE}/lib"
MAKE_ENV+= DESTDIR="${STAGEDIR}"
# XXX Bypass git check (and set a dummy -unused- revision)
CMAKE_ARGS+= -DDOLPHIN_WC_BRANCH:STRING="stable" \
@ -64,20 +76,9 @@ NLS_CMAKE_OFF= -DDISABLE_NLS:BOOL=ON
.include <bsd.port.pre.mk>
# JIT-enabled binaries are amd64 only
.if ${ARCH} != "amd64"
# JIT-enabled binaries are amd64 and aarch64 only
.if ${ARCH} != "amd64" && ${ARCH} != "aarch64"
CMAKE_ARGS+= -DENABLE_GENERIC:BOOL=ON
.endif
# When building with GCC, needs GCC 4.9+
.if ${COMPILER_TYPE} == gcc && ${COMPILER_VERSION} < 49
USE_GCC= yes
# Enable std::stoul()
CXXFLAGS+= -D_GLIBCXX_USE_C99
# Enable log2f(), exp2f() and roundf()
CXXFLAGS+= -D_GLIBCXX_USE_C99_MATH_TR1
# Turn on extra long double versions of math functions, needed for cmath
CXXFLAGS+= -D__ISO_C_VISIBLE=1999 -D_DECLARE_C99_LDBL_MATH
.endif
.include <bsd.port.post.mk>

View File

@ -1,3 +1,3 @@
TIMESTAMP = 1480489891
SHA256 (dolphin-emu-dolphin-5.0_GH0.tar.gz) = 62c4602055767ab314ff50a3b94ea57f792832aa1629e6b1117ebce10518dc0b
SIZE (dolphin-emu-dolphin-5.0_GH0.tar.gz) = 38246344
TIMESTAMP = 1536610912
SHA256 (dolphin-emu-dolphin-5.0.8715-5f0d825_GH0.tar.gz) = d9cfc6b3ab5aeccfae8e78569580621c6a959291fea8c5e62dee7b0ca9c60cbd
SIZE (dolphin-emu-dolphin-5.0.8715-5f0d825_GH0.tar.gz) = 36775798

View File

@ -0,0 +1,11 @@
--- CMakeLists.txt.orig 2018-09-17 22:39:14.470717000 +0200
+++ CMakeLists.txt 2018-09-17 22:39:47.456106000 +0200
@@ -92,7 +92,7 @@
set(mandir ${CMAKE_INSTALL_PREFIX}/documentation/man CACHE PATH "mandir")
else()
set(datadir ${CMAKE_INSTALL_PREFIX}/share/dolphin-emu CACHE PATH "datadir")
- set(mandir ${CMAKE_INSTALL_PREFIX}/share/man CACHE PATH "mandir")
+ set(mandir ${CMAKE_INSTALL_PREFIX}/man CACHE PATH "mandir")
endif()
add_definitions(-DDATA_DIR="${datadir}/")

View File

@ -1,13 +0,0 @@
Link to OpenGL libraries earlier to avoid crash with Nvidia's libGL
--- Source/Core/Common/CMakeLists.txt.orig 2016-06-24 08:09:07.000000000 +0000
+++ Source/Core/Common/CMakeLists.txt 2017-01-12 20:59:59.578506000 +0000
@@ -88,7 +88,7 @@
set(SRCS ${SRCS} GL/GLInterface/GLX.cpp)
# GLX has a hard dependency on libGL.
# Make sure to link to it if using GLX.
- set(LIBS ${LIBS} ${OPENGL_LIBRARIES})
+ set(LIBS ${OPENGL_LIBRARIES} ${LIBS})
endif()
set(SRCS ${SRCS} GL/GLInterface/X11_Util.cpp)
set(LIBS ${LIBS} ${XRANDR_LIBRARIES})

View File

@ -1,12 +0,0 @@
Add missing header for memset() and strncpy()
--- Source/Core/Core/MemoryWatcher.cpp.orig 2016-12-02 06:09:55.416128767 +0000
+++ Source/Core/Core/MemoryWatcher.cpp 2016-12-02 06:10:39.359433048 +0000
@@ -2,6 +2,7 @@
// Licensed under GPLv2+
// Refer to the license.txt file included.
+#include <cstring>
#include <fstream>
#include <iostream>
#include <memory>

View File

@ -0,0 +1,74 @@
Add DISABLE_NLS option
--- Source/Core/DolphinQt/CMakeLists.txt.orig 2018-09-17 22:03:07.626843000 +0200
+++ Source/Core/DolphinQt/CMakeLists.txt 2018-09-17 22:04:54.938302000 +0200
@@ -148,36 +148,39 @@
endif()
# Handle localization
-find_package(Gettext)
-if(GETTEXT_MSGMERGE_EXECUTABLE AND GETTEXT_MSGFMT_EXECUTABLE)
- set(pot_file "${CMAKE_SOURCE_DIR}/Languages/po/dolphin-emu.pot")
- file(GLOB LINGUAS ${CMAKE_SOURCE_DIR}/Languages/po/*.po)
-
- target_sources(dolphin-emu PRIVATE ${pot_file} ${LINGUAS})
- source_group("Localization" FILES ${LINGUAS})
- source_group("Localization\\\\Generated" FILES ${pot_file})
-
- foreach(po ${LINGUAS})
- get_filename_component(lang ${po} NAME_WE)
- set(mo_dir ${CMAKE_CURRENT_BINARY_DIR}/${lang})
- set(mo ${mo_dir}/dolphin-emu.mo)
-
- target_sources(dolphin-emu PRIVATE ${mo})
- source_group("Localization\\\\Generated" FILES ${mo})
-
- if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
- set_source_files_properties(${mo} PROPERTIES MACOSX_PACKAGE_LOCATION "Resources/${lang}.lproj")
- else()
- install(FILES ${mo} DESTINATION share/locale/${lang}/LC_MESSAGES)
- endif()
-
- add_custom_command(OUTPUT ${mo}
- COMMAND cmake -E make_directory ${mo_dir}
- COMMAND ${GETTEXT_MSGMERGE_EXECUTABLE} --quiet --update --backup=none -s ${po} ${pot_file}
- COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} -o ${mo} ${po}
- DEPENDS ${po}
- )
- endforeach()
+option(DISABLE_NLS "Disable native language support (NLS)" OFF)
+if(NOT DISABLE_NLS)
+ find_package(Gettext)
+ if(GETTEXT_MSGMERGE_EXECUTABLE AND GETTEXT_MSGFMT_EXECUTABLE)
+ set(pot_file "${CMAKE_SOURCE_DIR}/Languages/po/dolphin-emu.pot")
+ file(GLOB LINGUAS ${CMAKE_SOURCE_DIR}/Languages/po/*.po)
+
+ target_sources(dolphin-emu PRIVATE ${pot_file} ${LINGUAS})
+ source_group("Localization" FILES ${LINGUAS})
+ source_group("Localization\\\\Generated" FILES ${pot_file})
+
+ foreach(po ${LINGUAS})
+ get_filename_component(lang ${po} NAME_WE)
+ set(mo_dir ${CMAKE_CURRENT_BINARY_DIR}/${lang})
+ set(mo ${mo_dir}/dolphin-emu.mo)
+
+ target_sources(dolphin-emu PRIVATE ${mo})
+ source_group("Localization\\\\Generated" FILES ${mo})
+
+ if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
+ set_source_files_properties(${mo} PROPERTIES MACOSX_PACKAGE_LOCATION "Resources/${lang}.lproj")
+ else()
+ install(FILES ${mo} DESTINATION share/locale/${lang}/LC_MESSAGES)
+ endif()
+
+ add_custom_command(OUTPUT ${mo}
+ COMMAND cmake -E make_directory ${mo_dir}
+ COMMAND ${GETTEXT_MSGMERGE_EXECUTABLE} --quiet --update --backup=none -s ${po} ${pot_file}
+ COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} -o ${mo} ${po}
+ DEPENDS ${po}
+ )
+ endforeach()
+ endif()
endif()
if(APPLE)

View File

@ -1,24 +0,0 @@
Add DISABLE_NLS option
--- Source/Core/DolphinWX/CMakeLists.txt.orig 2015-10-06 20:47:47.480759056 +0000
+++ Source/Core/DolphinWX/CMakeLists.txt 2015-10-06 20:49:16.636752942 +0000
@@ -101,11 +101,14 @@
set(DOLPHIN_EXE ${DOLPHIN_EXE_BASE})
-include(FindGettext)
-if(GETTEXT_MSGMERGE_EXECUTABLE AND GETTEXT_MSGFMT_EXECUTABLE AND wxWidgets_FOUND)
- file(GLOB LINGUAS ${CMAKE_SOURCE_DIR}/Languages/po/*.po)
- add_custom_target(translations ALL)
- GETTEXT_CREATE_TRANSLATIONS(${CMAKE_SOURCE_DIR}/Languages/po/dolphin-emu.pot ${LINGUAS})
+option(DISABLE_NLS "Disable native language support (NLS)" OFF)
+if(NOT DISABLE_NLS)
+ include(FindGettext)
+ if(GETTEXT_MSGMERGE_EXECUTABLE AND GETTEXT_MSGFMT_EXECUTABLE AND wxWidgets_FOUND)
+ file(GLOB LINGUAS ${CMAKE_SOURCE_DIR}/Languages/po/*.po)
+ add_custom_target(translations ALL)
+ GETTEXT_CREATE_TRANSLATIONS(${CMAKE_SOURCE_DIR}/Languages/po/dolphin-emu.pot ${LINGUAS})
+ endif()
endif()
if(ANDROID)

View File

@ -1,33 +0,0 @@
commit c5b3b52d553d
Author: Jeffrey Pfau <jeffrey@endrift.com>
Date: Mon Dec 26 22:50:36 2016 -0800
InputCommon: Fix FreeBSD 11 libusb incompatibilities
---
Source/Core/InputCommon/GCAdapter.cpp | 6 ++++++
1 file changed, 6 insertions(+)
--- Source/Core/InputCommon/GCAdapter.cpp.orig 2016-06-24 08:09:07 UTC
+++ Source/Core/InputCommon/GCAdapter.cpp
@@ -49,7 +49,11 @@ static std::function<void(void)> s_detect_callback;
static bool s_libusb_driver_not_supported = false;
static libusb_context* s_libusb_context = nullptr;
+#if defined(__FreeBSD__) && __FreeBSD__ >= 11
+static bool s_libusb_hotplug_enabled = true;
+#else
static bool s_libusb_hotplug_enabled = false;
+#endif
#if defined(LIBUSB_API_VERSION) && LIBUSB_API_VERSION >= 0x01000102
static libusb_hotplug_callback_handle s_hotplug_handle;
#endif
@@ -102,7 +106,9 @@ static void ScanThreadFunc()
NOTICE_LOG(SERIALINTERFACE, "GC Adapter scanning thread started");
#if defined(LIBUSB_API_VERSION) && LIBUSB_API_VERSION >= 0x01000102
+#ifndef __FreeBSD__
s_libusb_hotplug_enabled = libusb_has_capability(LIBUSB_CAP_HAS_HOTPLUG) != 0;
+#endif
if (s_libusb_hotplug_enabled)
{
if (libusb_hotplug_register_callback(s_libusb_context, (libusb_hotplug_event)(LIBUSB_HOTPLUG_EVENT_DEVICE_ARRIVED | LIBUSB_HOTPLUG_EVENT_DEVICE_LEFT), LIBUSB_HOTPLUG_ENUMERATE, 0x057e, 0x0337, LIBUSB_HOTPLUG_MATCH_ANY, HotplugCallback, nullptr, &s_hotplug_handle) != LIBUSB_SUCCESS)

View File

@ -1,12 +0,0 @@
Add missing header for errno
--- Source/Core/VideoCommon/ImageWrite.cpp.orig 2016-12-01 14:49:37.182934391 +0000
+++ Source/Core/VideoCommon/ImageWrite.cpp 2016-12-01 14:51:32.373069616 +0000
@@ -2,6 +2,7 @@
// Licensed under GPLv2+
// Refer to the license.txt file included.
+#include <cerrno>
#include <list>
#include <string>

View File

@ -1,12 +0,0 @@
Add missing header for memset()
--- Source/Core/VideoCommon/TextureDecoder_Generic.cpp.orig 2016-12-02 08:01:14.838668401 +0000
+++ Source/Core/VideoCommon/TextureDecoder_Generic.cpp 2016-12-02 08:01:28.081034936 +0000
@@ -4,6 +4,7 @@
#include <algorithm>
#include <cmath>
+#include <cstring>
#include "Common/CommonFuncs.h"
#include "Common/CommonTypes.h"

File diff suppressed because it is too large Load Diff