svn commit: r505721 - in head/emulators/mesen: . files
Jan Beich
jbeich at FreeBSD.org
Wed Jul 3 02:05:10 UTC 2019
Author: jbeich
Date: Wed Jul 3 02:05:07 2019
New Revision: 505721
URL: https://svnweb.freebsd.org/changeset/ports/505721
Log:
emulators/mesen: add new port
PR: 227351
Submitted by: Greg V <greg at unrelenting.technology>
Added:
head/emulators/mesen/
head/emulators/mesen/Makefile (contents, props changed)
head/emulators/mesen/distinfo (contents, props changed)
head/emulators/mesen/files/
head/emulators/mesen/files/launch.sh (contents, props changed)
head/emulators/mesen/pkg-descr (contents, props changed)
head/emulators/mesen/pkg-plist (contents, props changed)
Added: head/emulators/mesen/Makefile
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/emulators/mesen/Makefile Wed Jul 3 02:05:07 2019 (r505721)
@@ -0,0 +1,89 @@
+# $FreeBSD$
+
+PORTNAME= mesen
+DISTVERSION= 0.9.8-4
+DISTVERSIONSUFFIX= -g4c701ad6
+CATEGORIES= emulators
+
+MAINTAINER= greg at unrelenting.technology
+COMMENT= Cross-platform Nintendo Entertainment System (NES/Famicom) emulator
+
+LICENSE= GPLv3
+
+# 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
+LIB_DEPENDS= libevdev.so:devel/libevdev \
+ libgdiplus.so:x11-toolkits/libgdiplus
+
+USES= compiler:c++14-lang gmake pkgconfig
+USE_GITHUB= yes
+GH_ACCOUNT= SourMesen
+GH_PROJECT= Mesen
+USE_SDL= sdl2
+MAKEFILE= makefile
+MAKE_ARGS= MESENPLATFORM=${MESEN_ARCH} \
+ CC="${CC}" CPPC="${CXX}" \
+ SYSTEM_LIBEVDEV=true
+MESEN_ARCH= ${ARCH:S/amd64/x64/:S/i386/x86/}
+
+.if exists(/usr/lib/libc++fs.a)
+MAKE_ARGS+= FSLIB=-lc++fs
+.elif exists(/usr/lib/libc++experimental.a)
+# XXX Remove after FreeBSD 12.0 EOL
+MAKE_ARGS+= FSLIB=-lc++experimental
+.else
+# XXX Remove after FreeBSD 11.2 EOL
+USE_GCC= yes
+.endif
+
+# XXX Always enable LTO after FreeBSD 11.2 and 12.0 EOL
+.if defined(USE_GCC) || (${/usr/bin/ld:L:tA} == /usr/bin/ld.lld)
+MAKE_ARGS+= LTO=true
+.endif
+
+OPTIONS_MULTI= FRONTENDS
+OPTIONS_MULTI_FRONTENDS= MONO LIBRETRO
+OPTIONS_DEFAULT= MONO LIBRETRO
+OPTIONS_SUB= yes
+
+MONO_DESC= Mono based GUI frontend
+LIBRETRO_DESC= Libretro core
+
+MONO_ALL_TARGET= ui
+MONO_BUILD_DEPENDS= mono:lang/mono
+MONO_RUN_DEPENDS= mono:lang/mono
+MONO_DESKTOP_ENTRIES= "Mesen" "NES/Famicom Emulator" \
+ "${PORTNAME}" "${PORTNAME}" "Game;Emulator;" false
+
+LIBRETRO_ALL_TARGET= libretro
+
+do-install: # empty to avoid default
+
+do-install-MONO-on:
+ ${MKDIR} ${STAGEDIR}${PREFIX}/libexec/mesen
+ ${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/64x64/apps/
+ ${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/32x32/apps/
+ ${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/16x16/apps/
+ ${INSTALL_LIB} ${WRKSRC}/bin/${MESEN_ARCH}/Release/Dependencies/libMesenCore.${MESEN_ARCH}.dll \
+ ${STAGEDIR}${PREFIX}/libexec/mesen/libMesenCore.dll
+ ${INSTALL_DATA} ${WRKSRC}/bin/${MESEN_ARCH}/Release/Mesen.exe \
+ ${STAGEDIR}${PREFIX}/libexec/mesen/
+ ${INSTALL_DATA} ${WRKSRC}/GUI.NET/Resources/MesenIcon.png \
+ ${STAGEDIR}${PREFIX}/share/icons/hicolor/64x64/apps/mesen.png
+ ${INSTALL_DATA} ${WRKSRC}/GUI.NET/Resources/MesenIconMedium.png \
+ ${STAGEDIR}${PREFIX}/share/icons/hicolor/32x32/apps/mesen.png
+ ${INSTALL_DATA} ${WRKSRC}/GUI.NET/Resources/MesenIconSmall.png \
+ ${STAGEDIR}${PREFIX}/share/icons/hicolor/16x16/apps/mesen.png
+ ${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.mk>
Added: head/emulators/mesen/distinfo
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/emulators/mesen/distinfo Wed Jul 3 02:05:07 2019 (r505721)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1561506562
+SHA256 (SourMesen-Mesen-0.9.8-4-g4c701ad6_GH0.tar.gz) = 73bbffe6560ed355b2b51fbb1a0ca7b53b0b9ec58b89bf272aa29a972f78a97a
+SIZE (SourMesen-Mesen-0.9.8-4-g4c701ad6_GH0.tar.gz) = 17628801
Added: head/emulators/mesen/files/launch.sh
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/emulators/mesen/files/launch.sh Wed Jul 3 02:05:07 2019 (r505721)
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec mono %%PREFIX%%/libexec/mesen/Mesen.exe $*
Added: head/emulators/mesen/pkg-descr
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/emulators/mesen/pkg-descr Wed Jul 3 02:05:07 2019 (r505721)
@@ -0,0 +1,3 @@
+Mesen is a high-accuracy NES and Famicom emulator and NSF player.
+
+WWW: https://www.mesen.ca/
Added: head/emulators/mesen/pkg-plist
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/emulators/mesen/pkg-plist Wed Jul 3 02:05:07 2019 (r505721)
@@ -0,0 +1,7 @@
+%%LIBRETRO%%lib/libretro/mesen_libretro.so
+%%MONO%%bin/mesen
+%%MONO%%libexec/mesen/Mesen.exe
+%%MONO%%libexec/mesen/libMesenCore.dll
+%%MONO%%share/icons/hicolor/16x16/apps/mesen.png
+%%MONO%%share/icons/hicolor/32x32/apps/mesen.png
+%%MONO%%share/icons/hicolor/64x64/apps/mesen.png
More information about the svn-ports-all
mailing list