update mesen to 2.2.1

This commit is contained in:
chris
2026-10-04 19:04:46 +00:00
parent e3bf0031f1
commit 6980f16714
3 changed files with 56 additions and 26 deletions
+14 -23
View File
@@ -1,57 +1,53 @@
PORTNAME= mesen
DISTVERSION= 0.9.9
DISTVERSION= 2.2.1
PORTREVISION= 4
CATEGORIES= emulators
MAINTAINER= ports@FreeBSD.org
MAINTAINER= cpetrik@proton.me
COMMENT= Cross-platform Nintendo Entertainment System (NES/Famicom) emulator
WWW= https://www.mesen.ca/
LICENSE= GPLv3
# ARM is only supported on Android
# ARM/MIPS are only supported on Android
ONLY_FOR_ARCHS= amd64 i386
BUILD_DEPENDS= zip:archivers/zip \
evdev-proto>0:devel/evdev-proto \
msbuild:devel/msbuild
msbuild:devel/msbuild \
dotnet:lang/dotnet8
LIB_DEPENDS= libevdev.so:devel/libevdev \
libgdiplus.so:x11-toolkits/libgdiplus
USES= compiler:c++17-lang gmake pkgconfig sdl
USE_GITHUB= yes
GH_ACCOUNT= SourMesen
GH_PROJECT= Mesen
GH_ACCOUNT= nesdev-org
GH_PROJECT= MesenCE
USE_SDL= sdl2
MAKEFILE= makefile
MAKE_ARGS= MESENPLATFORM=${MESEN_ARCH} \
CC="${CC}" CPPC="${CXX}" \
CC="${CC}" CXX="${CXX}" \
FSLIB=-lc++experimental \
LTO=true \
LTO=false \
SYSTEM_LIBEVDEV=true
MESEN_ARCH= ${ARCH:S/amd64/x64/:S/i386/x86/}
MESEN_ARCH= ${ARCH:S/amd64/linux-x64/:S/i386/linux-x86/}
OPTIONS_MULTI= FRONTENDS
OPTIONS_MULTI_FRONTENDS= MONO LIBRETRO
OPTIONS_DEFAULT= MONO LIBRETRO
OPTIONS_MULTI_FRONTENDS= MONO
OPTIONS_DEFAULT= MONO
OPTIONS_SUB= yes
MONO_DESC= Mono based GUI frontend
LIBRETRO_DESC= Libretro core
MONO_ALL_TARGET= ui
MONO_BUILD_DEPENDS= mono:lang/mono${MONO_DEFAULT}
MONO_RUN_DEPENDS= mono:lang/mono${MONO_DEFAULT}
MONO_DESKTOP_ENTRIES= "Mesen" "NES/Famicom Emulator" \
"${PORTNAME}" "${PORTNAME}" "Game;Emulator;" false
LIBRETRO_ALL_TARGET= libretro
MAKE_JOBS_UNSAFE=yes
.include <bsd.port.pre.mk>
.if defined(MONO_DEFAULT) && ${MONO_DEFAULT} > 6
BROKEN= fails to build with Mono version ${MONO_DEFAULT}: error MSB4184: The expression ""Program.cs".GetPathsOfAllDirectoriesAbove()" cannot be evaluated. Method 'System.String.GetPathsOfAllDirectoriesAbove' not found.
.endif
do-install: # empty to avoid default
do-install-MONO-on:
@@ -72,9 +68,4 @@ do-install-MONO-on:
${INSTALL_SCRIPT} ${FILESDIR}/launch.sh ${STAGEDIR}${PREFIX}/bin/mesen
${REINPLACE_CMD} 's|%%PREFIX%%|${PREFIX}|g' ${STAGEDIR}${PREFIX}/bin/mesen
do-install-LIBRETRO-on:
${MKDIR} ${STAGEDIR}${PREFIX}/lib/libretro
${INSTALL_LIB} ${WRKSRC}/bin/mesen_libretro.${MESEN_ARCH}.so \
${STAGEDIR}${PREFIX}/lib/libretro/mesen_libretro.so
.include <bsd.port.post.mk>
+3 -3
View File
@@ -1,3 +1,3 @@
TIMESTAMP = 1744375796
SHA256 (SourMesen-Mesen-0.9.9_GH0.tar.gz) = 8c638a9910b8de6cf628ceefb226c2f636e4397b0629f58a8ffb304984d68ea9
SIZE (SourMesen-Mesen-0.9.9_GH0.tar.gz) = 17683748
TIMESTAMP = 1791088727
SHA256 (nesdev-org-MesenCE-2.2.1_GH0.tar.gz) = 2afa2d722708dcbb01b1763aca877225948402261f1daa97cbcb0c89fb101659
SIZE (nesdev-org-MesenCE-2.2.1_GH0.tar.gz) = 3159327
+39
View File
@@ -0,0 +1,39 @@
--- makefile.bak 2026-10-04 11:26:40.377532000 +0000
+++ makefile 2026-10-04 11:31:54.271713000 +0000
@@ -27,8 +27,8 @@
MESENOS :=
UNAME_S := $(shell uname -s)
-ifeq ($(UNAME_S),Linux)
- MESENOS := linux
+ifeq ($(UNAME_S),FreeBSD)
+ MESENOS := freebsd
SHAREDLIB := MesenCore.so
endif
@@ -111,6 +111,7 @@
endif
CXXFLAGS = -fPIC -Wall --std=c++17 $(MESENFLAGS) $(SDL2INC) -I $(realpath ./) -I $(realpath ./Core) -I $(realpath ./Utilities) -I $(realpath ./Sdl) -I $(realpath ./Linux) -I $(realpath ./MacOS)
+
OBJCXXFLAGS = $(CXXFLAGS)
CFLAGS = -fPIC -Wall $(MESENFLAGS)
@@ -150,7 +151,7 @@
LUASRC := $(shell find Lua -name '*.c')
LUAOBJ := $(LUASRC:.c=.o)
-ifeq ($(MESENOS),linux)
+ifeq ($(MESENOS),freebsd)
LINUXSRC := $(shell find Linux -name '*.cpp')
else
LINUXSRC :=
@@ -176,7 +177,7 @@
LIBEVDEVINC := -I../
endif
-ifeq ($(MESENOS),linux)
+ifeq ($(MESENOS),freebsd)
X11LIB := -lX11
else
X11LIB :=