Skip to content

Commit

Permalink
games/melonds: Update to 0.9.5
Browse files Browse the repository at this point in the history
ChangeLog: https://github.com/melonDS-emu/melonDS/releases/tag/0.9.5

 * remove incorrect color profile from PNG icons
 * DLDI fixes for the Smash demo
 * fix gaps in I/O handling
 * fix invalid savemem commands, fixes Dementium
 * FreeBIOS: add VRAM-compatible LZ77 decompress function, fixes Yoshi's Island
 * default firmware: in DSi mode, emulate DWM-W015 wifi board instead of
   DWM-W024
 * default firmware: save WFC settings to separate file
 * disable firmware overrides UI when firmware override isn't checked
 * 2D: more accurate fade/blending
 * DSi: add support for GXFIFO NDMA
 * DSi: add mainRAM mirror at 0x0C000000
 * add 3DS 5:3 aspect ratio, refactor aspect ratio code
 * OpenGL: fix 16x resolution on macOS
 * fix triggers being recognized as negative analog stick values during mapping
 * fix joystick mapping buttons on macOS
 * DSi: preliminary implementation of SNDEXCNT
 * DSi: fix SD inserted/removed IRQ bits
 * DSi: implement 8/16bit access to AES registers
 * DSi: fix SCFG_MC cart-inserted bit
 * JIT: invalidate blocks in ARM7 VRAM/WRAM when it is remapped
 * fix ROM banner reading when the ROM has no banner
 * fix UTF16 ROM title handling in the ROM info dialog
 * wifi: improvements to wifi emulation
 * wifi: shared-memory based sync/comm mechanism for local wifi
 * proper support for multiple melonDS instances for multiplayer
 * DSi: actual, proper camera support
 * DSi: fix DSP enough that it will actually work
 * fix OpenGL context handling
 * force-align all memory accesses
 * better CLI parameter handling
 * fix bugs in DSi direct boot

PR:		272801
Reported by:	nadia@nhp.sh
Approved by:	henry.hu.sh@gmail.com (maintainer, timeout > 2 weeks)
  • Loading branch information
nadiaholmquist authored and fernape committed Aug 10, 2023
1 parent 7b58515 commit 3e10ec4
Show file tree
Hide file tree
Showing 4 changed files with 67 additions and 11 deletions.
15 changes: 7 additions & 8 deletions games/melonds/Makefile
@@ -1,6 +1,5 @@
PORTNAME= melonds
PORTVERSION= 0.9.4
PORTREVISION= 1
PORTVERSION= 0.9.5
CATEGORIES= games
PKGNAMESUFFIX= -${FLAVOR}

Expand All @@ -13,16 +12,16 @@ LICENSE_FILE= ${WRKSRC}/LICENSE

BROKEN_i386= static_assert failed due to requirement 'sizeof(TestCase) == 4312'

LIB_DEPENDS= libslirp.so:net/libslirp \
libepoxy.so:graphics/libepoxy
LIB_DEPENDS= libslirp.so:net/libslirp

FLAVORS= qt5 qt6
FLAVOR?= qt5

USES= cmake compiler:c++17-lang desktop-file-utils gnome \
iconv libarchive pkgconfig qt:${FLAVOR:S/qt//} sdl
iconv libarchive pkgconfig qt:${FLAVOR:S/qt//} sdl kde:5
USE_GNOME= glib20
USE_SDL= sdl2
USE_KDE= ecm:build

.if ${FLAVOR} == qt5
CMAKE_OFF= USE_QT6
Expand All @@ -33,13 +32,13 @@ CMAKE_ON= USE_QT6
USE_GITHUB= yes
GH_ACCOUNT= melonDS-emu
GH_PROJECT= melonDS
GH_TAGNAME= 0.9.4
GH_TAGNAME= 0.9.5

qt5_CONFLICTS_INSTALL= ${PORTNAME}-qt6
qt6_CONFLICTS_INSTALL= ${PORTNAME}-qt5

_USE_QT5= core gui network widgets buildtools:build qmake:build
_USE_QT6= base
_USE_QT5= core gui network widgets multimedia buildtools:build qmake:build
_USE_QT6= base multimedia
USE_QT= ${_USE_QT${FLAVOR:S/qt//}}

.include <bsd.port.mk>
6 changes: 3 additions & 3 deletions games/melonds/distinfo
@@ -1,3 +1,3 @@
TIMESTAMP = 1662945631
SHA256 (melonDS-emu-melonDS-0.9.4_GH0.tar.gz) = 8022c8798a723f8ffae6ffdad2e7637cf9046e88f86b55b5f9ad3fa3b2e6d398
SIZE (melonDS-emu-melonDS-0.9.4_GH0.tar.gz) = 2330696
TIMESTAMP = 1689499885
SHA256 (melonDS-emu-melonDS-0.9.5_GH0.tar.gz) = 52c6b99340b8bba8c52b11a2242591f05e838c34ddd9ec20dcf1a6039405434a
SIZE (melonDS-emu-melonDS-0.9.5_GH0.tar.gz) = 2496704
25 changes: 25 additions & 0 deletions games/melonds/files/patch-backport-43d091361e
@@ -0,0 +1,25 @@
From 43d091361ed6b400a68911147fd5fe524ccecf34 Mon Sep 17 00:00:00 2001
From: RSDuck <RSDuck@users.noreply.github.com>
Date: Fri, 25 Nov 2022 23:47:36 +0100
Subject: [PATCH] fix #1551

---
src/frontend/duckstation/duckstation_compat.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git src/frontend/duckstation/duckstation_compat.h src/frontend/duckstation/duckstation_compat.h
index a661e926..fed37805 100644
--- src/frontend/duckstation/duckstation_compat.h
+++ src/frontend/duckstation/duckstation_compat.h
@@ -12,6 +12,6 @@

#define Panic(msg) assert(false && msg)

-#define UnreachableCode() __builtin_unreachable
+#define UnreachableCode() __builtin_unreachable()

#endif
\ No newline at end of file
--
2.41.0

32 changes: 32 additions & 0 deletions games/melonds/files/patch-backport-e6cc4b14b0
@@ -0,0 +1,32 @@
From e6cc4b14b0eb603001e968be9b1ace8a09e1bce1 Mon Sep 17 00:00:00 2001
From: Nadia Holmquist Pedersen <nadia@nhp.sh>
Date: Sun, 16 Jul 2023 15:46:50 +0200
Subject: [PATCH] Work around a strange bug in Qt5 that causes melonDS to crash
on launch

...but only with LTO enabled
...but only on some UNIX systems
...but only with some additional build options except when it breaks
without any as well
---
src/frontend/qt_sdl/CMakeLists.txt | 6 ++++++
1 file changed, 6 insertions(+)

diff --git src/frontend/qt_sdl/CMakeLists.txt src/frontend/qt_sdl/CMakeLists.txt
index 0ae6ecea..24261030 100644
--- src/frontend/qt_sdl/CMakeLists.txt
+++ src/frontend/qt_sdl/CMakeLists.txt
@@ -222,4 +222,10 @@ if (UNIX AND NOT APPLE)

install(FILES ${CMAKE_SOURCE_DIR}/res/net.kuribo64.melonDS.desktop DESTINATION ${CMAKE_INSTALL_PREFIX}/share/applications)
install(TARGETS melonDS BUNDLE DESTINATION ${CMAKE_BINARY_DIR} RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}/bin)
+
+ if (NOT USE_QT6)
+ set_target_properties(melonDS PROPERTIES
+ INTERPROCEDURAL_OPTIMIZATION OFF
+ INTERPROCEDURAL_OPTIMIZATION_RELEASE OFF)
+ endif()
endif()
--
2.41.0

0 comments on commit 3e10ec4

Please sign in to comment.