diff options
author | jbeich <jbeich@FreeBSD.org> | 2015-10-14 22:57:23 +0800 |
---|---|---|
committer | jbeich <jbeich@FreeBSD.org> | 2015-10-14 22:57:23 +0800 |
commit | ac0045033abdcdb0590fa495fad453de227ab68f (patch) | |
tree | 1965f35378f1cb89b99d451ca91af65774370d53 /emulators | |
parent | dcfa157023b19542d84da7694506d177fd7c4613 (diff) | |
download | freebsd-ports-gnome-ac0045033abdcdb0590fa495fad453de227ab68f.tar.gz freebsd-ports-gnome-ac0045033abdcdb0590fa495fad453de227ab68f.tar.zst freebsd-ports-gnome-ac0045033abdcdb0590fa495fad453de227ab68f.zip |
emulators/dolphin-emu: chase r399209
https://github.com/miniupnp/miniupnp/commit/1da63faa4fff5cb30e5d4b848ceef80a292382b9
Obtained from: upstream (rebased)
Approved by: portmgr blanket
MFH: 2015Q4
X-MFH-With: r399209
Diffstat (limited to 'emulators')
-rw-r--r-- | emulators/dolphin-emu/Makefile | 2 | ||||
-rw-r--r-- | emulators/dolphin-emu/files/patch-git_8c5744bc | 137 |
2 files changed, 138 insertions, 1 deletions
diff --git a/emulators/dolphin-emu/Makefile b/emulators/dolphin-emu/Makefile index f9898619a7ba..2c339d52d048 100644 --- a/emulators/dolphin-emu/Makefile +++ b/emulators/dolphin-emu/Makefile @@ -3,7 +3,7 @@ PORTNAME= dolphin-emu PORTVERSION= 4.0.2 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= emulators MAINTAINER= martymac@FreeBSD.org diff --git a/emulators/dolphin-emu/files/patch-git_8c5744bc b/emulators/dolphin-emu/files/patch-git_8c5744bc new file mode 100644 index 000000000000..bf762a4fcbf9 --- /dev/null +++ b/emulators/dolphin-emu/files/patch-git_8c5744bc @@ -0,0 +1,137 @@ +commit 8c5744bca705a0895bd51c966a30171ee2bab43a +Author: Marisa Kirisame <marisa@sayachan.org> +Date: Tue, 29 Sep 2015 23:10:31 +0200 + + miniupnpc API version 14 changed the upnpDiscover functions, + adding an argument for TTL (should default to 2) this enables support for + that should the build system have that specific version installed, the + miniupnpc bundled in the project is unchanged +--- + CMakeLists.txt | 5 ++++- + CMakeTests/FindMiniupnpc.cmake | 39 +++++++++++++++++++++++++++++++++----- + Source/Core/Core/NetPlayServer.cpp | 4 ++++ + 3 files changed, 42 insertions(+), 6 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 291efee..7ac0679 100644 +--- CMakeLists.txt ++++ CMakeLists.txt +@@ -690,9 +690,12 @@ if(USE_UPNP) + if(NOT APPLE AND NOT ANDROID) + include(FindMiniupnpc) + endif() +- if(MINIUPNP_FOUND AND MINIUPNPC_VERSION_1_7_OR_HIGHER) ++ if(MINIUPNP_FOUND AND (MINIUPNPC_VERSION_1_7_OR_HIGHER OR MINIUPNPC_VERSION_API14_OR_HIGHER)) + message("Using shared miniupnpc") + include_directories(${MINIUPNP_INCLUDE_DIR}) ++ if (MINIUPNPC_VERSION_API14_OR_HIGHER) ++ add_definitions(-DUPNPDISCOVER_HAS_TTL) ++ endif() + else() + message("Using static miniupnpc from Externals") + add_subdirectory(Externals/miniupnpc) +diff --git a/CMakeTests/FindMiniupnpc.cmake b/CMakeTests/FindMiniupnpc.cmake +index bb1048c..5301d40 100644 +--- CMakeTests/FindMiniupnpc.cmake ++++ CMakeTests/FindMiniupnpc.cmake +@@ -58,6 +58,30 @@ if (MINIUPNP_FOUND) + #include <stdio.h> + int main() + { ++ struct UPNPDev *devlist = NULL; ++ int upnp_delay = 5000; ++ const char *upnp_multicastif = NULL; ++ const char *upnp_minissdpdsock = NULL; ++ int upnp_sameport = 0; ++ int upnp_ipv6 = 0; ++ unsigned char upnp_ttl = 2; ++ int upnp_error = 0; ++ devlist = upnpDiscover(upnp_delay, upnp_multicastif, upnp_minissdpdsock, upnp_sameport, upnp_ipv6, upnp_ttl, &upnp_error); ++ ++ return 0; ++ }" ++ MINIUPNPC_VERSION_API14_OR_HIGHER) ++ ++IF (NOT MINIUPNPC_VERSION_API14_OR_HIGHER) ++ set(CMAKE_REQUIRED_INCLUDES ${MINIUPNP_INCLUDE_DIR}) ++ set(CMAKE_REQUIRED_LIBRARIES ${MINIUPNP_LIBRARY}) ++ check_cxx_source_runs(" ++ #include <miniwget.h> ++ #include <miniupnpc.h> ++ #include <upnpcommands.h> ++ #include <stdio.h> ++ int main() ++ { + static struct UPNPUrls urls; + static struct IGDdatas data; + +@@ -66,8 +90,9 @@ if (MINIUPNP_FOUND) + return 0; + }" + MINIUPNPC_VERSION_1_7_OR_HIGHER) ++ ENDIF() + +-IF (NOT MINIUPNPC_VERSION_1_7_OR_HIGHER) ++IF (NOT MINIUPNPC_VERSION_1_7_OR_HIGHER AND NOT MINIUPNPC_VERSION_API14_OR_HIGHER) + set(CMAKE_REQUIRED_INCLUDES ${MINIUPNP_INCLUDE_DIR}) + set(CMAKE_REQUIRED_LIBRARIES ${MINIUPNP_LIBRARY}) + check_cxx_source_runs(" +@@ -91,7 +116,7 @@ IF (NOT MINIUPNPC_VERSION_1_7_OR_HIGHER) + MINIUPNPC_VERSION_PRE1_7) + ENDIF() + +- IF (NOT MINIUPNPC_VERSION_PRE1_7 AND NOT MINIUPNPC_VERSION_1_7_OR_HIGHER) ++ IF (NOT MINIUPNPC_VERSION_PRE1_7 AND NOT MINIUPNPC_VERSION_1_7_OR_HIGHER AND NOT MINIUPNPC_VERSION_API14_OR_HIGHER) + set(CMAKE_REQUIRED_INCLUDES ${MINIUPNP_INCLUDE_DIR}) + set(CMAKE_REQUIRED_LIBRARIES ${MINIUPNP_LIBRARY}) + check_cxx_source_runs(" +@@ -116,7 +141,7 @@ IF (NOT MINIUPNPC_VERSION_1_7_OR_HIGHER) + + ENDIF() + +- IF (NOT MINIUPNPC_VERSION_PRE1_6 AND NOT MINIUPNPC_VERSION_PRE1_7 AND NOT MINIUPNPC_VERSION_1_7_OR_HIGHER) ++ IF (NOT MINIUPNPC_VERSION_PRE1_6 AND NOT MINIUPNPC_VERSION_PRE1_7 AND NOT MINIUPNPC_VERSION_1_7_OR_HIGHER AND NOT MINIUPNPC_VERSION_API14_OR_HIGHER) + set(CMAKE_REQUIRED_INCLUDES ${MINIUPNP_INCLUDE_DIR}) + set(CMAKE_REQUIRED_LIBRARIES ${MINIUPNP_LIBRARY}) + check_cxx_source_runs(" +@@ -136,7 +161,7 @@ IF (NOT MINIUPNPC_VERSION_1_7_OR_HIGHER) + MINIUPNPC_VERSION_1_5_OR_HIGHER) + ENDIF() + +- IF (NOT MINIUPNPC_VERSION_1_5_OR_HIGHER AND NOT MINIUPNPC_VERSION_PRE1_6 AND NOT MINIUPNPC_VERSION_PRE1_7 AND NOT MINIUPNPC_VERSION_1_7_OR_HIGHER) ++ IF (NOT MINIUPNPC_VERSION_1_5_OR_HIGHER AND NOT MINIUPNPC_VERSION_PRE1_6 AND NOT MINIUPNPC_VERSION_PRE1_7 AND NOT MINIUPNPC_VERSION_1_7_OR_HIGHER AND NOT MINIUPNPC_VERSION_API14_OR_HIGHER) + set(CMAKE_REQUIRED_INCLUDES ${MINIUPNP_INCLUDE_DIR}) + set(CMAKE_REQUIRED_LIBRARIES ${MINIUPNP_LIBRARY}) + check_cxx_source_runs(" +@@ -167,10 +192,14 @@ IF(MINIUPNPC_VERSION_PRE1_7) + message(STATUS "Found miniupnpc version is pre v1.7") + ENDIF() + +-IF(NOT MINIUPNPC_VERSION_PRE1_5 AND NOT MINIUPNPC_VERSION_PRE1_6 AND NOT MINIUPNPC_VERSION_PRE1_7) ++IF(NOT MINIUPNPC_VERSION_PRE1_5 AND NOT MINIUPNPC_VERSION_PRE1_6 AND NOT MINIUPNPC_VERSION_PRE1_7 AND NOT MINIUPNPC_VERSION_API14_OR_HIGHER) + message(STATUS "Found miniupnpc version is v1.7 or higher") + ENDIF() + ++IF(NOT MINIUPNPC_VERSION_PRE1_5 AND NOT MINIUPNPC_VERSION_PRE1_6 AND NOT MINIUPNPC_VERSION_PRE1_7 AND NOT MINIUPNPC_VERSION_1_7_OR_HIGHER) ++ message(STATUS "Found miniupnpc version is v1.9 API version 14 or higher") ++ENDIF() ++ + else () + message (STATUS "Could not find miniupnp") + endif () +diff --git a/Source/Core/Core/NetPlayServer.cpp b/Source/Core/Core/NetPlayServer.cpp +index 7ed283a..27b46c9 100644 +--- Source/Core/Core/Src/NetPlayServer.cpp ++++ Source/Core/Core/Src/NetPlayServer.cpp +@@ -552,7 +552,11 @@ bool NetPlayServer::initUPnP() + memset(&m_upnp_data, 0, sizeof(IGDdatas)); + + // Find all UPnP devices ++#ifdef UPNPDISCOVER_HAS_TTL ++ devlist = upnpDiscover(2000, NULL, NULL, 0, 0, 2, &upnperror); ++#else + devlist = upnpDiscover(2000, NULL, NULL, 0, 0, &upnperror); ++#endif + if (!devlist) + { + WARN_LOG(NETPLAY, "An error occured trying to discover UPnP devices."); |