diff --git a/emulators/fceux/Makefile b/emulators/fceux/Makefile new file mode 100644 index 00000000000..23024f58804 --- /dev/null +++ b/emulators/fceux/Makefile @@ -0,0 +1,54 @@ +# $OpenBSD: Makefile,v 1.1.1.1 2012/12/25 00:07:01 bentley Exp $ + +COMMENT = emulator for Nintendo Entertainment System + +DISTNAME = fceux-2.2.0.src +PKGNAME = ${DISTNAME:S/.src//} +CATEGORIES = emulators games + +HOMEPAGE = http://fceux.com/ + +# GPLv2+ +PERMIT_PACKAGE_CDROM = Yes +PERMIT_PACKAGE_FTP = Yes +PERMIT_DISTFILES_CDROM = Yes +PERMIT_DISTFILES_FTP = Yes + +MASTER_SITES = ${MASTER_SITE_SOURCEFORGE:=fceultra/} + +WANTLIB += GL SDL X11 c gd gdk-x11-2.0 gdk_pixbuf-2.0 glib-2.0 +WANTLIB += gobject-2.0 gtk-x11-2.0 lua5.1 m pixman-1 pthread +WANTLIB += stdc++ z ${MODLUA_WANTLIB} + +LIB_DEPENDS = devel/sdl \ + graphics/gd \ + x11/gtk+2 + +MODULES = devel/scons \ + lang/lua + +MAKE_ENV = CC="${CC}" \ + CXX="${CXX}" \ + LDFLAGS="-L${LOCALBASE}/lib -L${X11BASE}/lib" + +CONFIGURE_STYLE = scons + +WRKDIST = ${WRKDIR}/fceux + +NO_REGRESS = Yes + +SUBST_VARS += MODLUA_WANTLIB +SUBST_VARS += MODLUA_LIB + +post-extract: + @perl -MExtUtils::Command -e dos2unix ${WRKSRC} + +pre-configure: + ${SUBST_CMD} ${WRKDIST}/SConstruct + +do-install: + ${SETENV} ${MAKE_ENV} ${MODSCONS_BIN} -C ${WRKSRC} \ + ${MODSCONS_ENV} ${MODSCONS_FLAGS} \ + --prefix=${PREFIX} ${INSTALL_TARGET} + +.include diff --git a/emulators/fceux/distinfo b/emulators/fceux/distinfo new file mode 100644 index 00000000000..665dc9e55f1 --- /dev/null +++ b/emulators/fceux/distinfo @@ -0,0 +1,2 @@ +SHA256 (fceux-2.2.0.src.tar.gz) = Ma17R41cCRGmek6urp3pFdRPyVhEFIoTURTifX/RppQ= +SIZE (fceux-2.2.0.src.tar.gz) = 8852228 diff --git a/emulators/fceux/patches/patch-SConstruct b/emulators/fceux/patches/patch-SConstruct new file mode 100644 index 00000000000..f5cf251ebd1 --- /dev/null +++ b/emulators/fceux/patches/patch-SConstruct @@ -0,0 +1,34 @@ +$OpenBSD: patch-SConstruct,v 1.1.1.1 2012/12/25 00:07:01 bentley Exp $ +--- SConstruct.orig Mon Dec 24 02:05:25 2012 ++++ SConstruct Mon Dec 24 02:06:15 2012 +@@ -113,8 +113,8 @@ else: + # Should work on any *nix + env.Append(CCFLAGS = ["-DLUA_USE_LINUX"]) + lua_available = False +- if conf.CheckLib('lua5.1'): +- env.Append(LINKFLAGS = ["-ldl", "-llua5.1"]) ++ if conf.CheckLib('${MODLUA_WANTLIB}'): ++ env.Append(LINKFLAGS = '${MODLUA_LIB}') + lua_available = True + elif conf.CheckLib('lua'): + env.Append(LINKFLAGS = ["-ldl", "-llua"]) +@@ -152,8 +152,6 @@ print "base CCFLAGS:",env['CCFLAGS'] + + if env['DEBUG']: + env.Append(CPPDEFINES=["_DEBUG"], CCFLAGS = ['-g']) +-else: +- env.Append(CCFLAGS = ['-O2']) + + if env['PLATFORM'] != 'win32' and env['PLATFORM'] != 'cygwin' and env['CREATE_AVI']: + env.Append(CPPDEFINES=["CREATE_AVI"]) +@@ -191,8 +189,8 @@ env.Command(auxlib_dst, auxlib_src, [Copy(auxlib_dst, + + man_src = 'documentation/fceux.6' + man_net_src = 'documentation/fceux-net-server.6' +-man_dst = prefix + '/share/man/man6/fceux.6' +-man_net_dst = prefix + '/share/man/man6/fceux-net-server.6' ++man_dst = prefix + '/man/man6/fceux.6' ++man_net_dst = prefix + '/man/man6/fceux-net-server.6' + + share_src = 'output/' + share_dst = prefix + '/share/fceux/' diff --git a/emulators/fceux/patches/patch-fceux-server_server_cpp b/emulators/fceux/patches/patch-fceux-server_server_cpp new file mode 100644 index 00000000000..e2e5ca150f0 --- /dev/null +++ b/emulators/fceux/patches/patch-fceux-server_server_cpp @@ -0,0 +1,13 @@ +$OpenBSD: patch-fceux-server_server_cpp,v 1.1.1.1 2012/12/25 00:07:01 bentley Exp $ +--- fceux-server/server.cpp.orig Thu Dec 20 22:19:05 2012 ++++ fceux-server/server.cpp Thu Dec 20 22:19:46 2012 +@@ -51,7 +51,9 @@ + + // MSG_NOSIGNAL and SOL_TCP have been depreciated on osx + #if defined (__APPLE__) || defined(BSD) ++#if !defined(__OpenBSD__) + #define MSG_NOSIGNAL SO_NOSIGPIPE ++#endif + #define SOL_TCP IPPROTO_TCP + #endif + diff --git a/emulators/fceux/pkg/DESCR b/emulators/fceux/pkg/DESCR new file mode 100644 index 00000000000..62f65d33c50 --- /dev/null +++ b/emulators/fceux/pkg/DESCR @@ -0,0 +1,7 @@ +FCEUX is a portable and highly accurate NES/Famicom/Famicom Disk System +emulator with excellent compatibility with almost every rom dump +available, supports both PAL and NTSC modes, save states, game genie +support, and networking. FCEUX also offers tools for debugging, +rom-hacking, map making, Tool-assisted movies, and Lua scripting. +Finally FCEUX includes a GTK2 GUI to assist in configuration and +gameplay. diff --git a/emulators/fceux/pkg/PLIST b/emulators/fceux/pkg/PLIST new file mode 100644 index 00000000000..7c0827054d8 --- /dev/null +++ b/emulators/fceux/pkg/PLIST @@ -0,0 +1,80 @@ +@comment $OpenBSD: PLIST,v 1.1.1.1 2012/12/25 00:07:01 bentley Exp $ +@bin bin/fceux +@bin bin/fceux-net-server +@man man/man6/fceux-net-server.6 +@man man/man6/fceux.6 +share/fceux/ +share/fceux/auxlib.lua +share/fceux/luaScripts/ +share/fceux/luaScripts/AVI-HeadsUpDisplay.lua +share/fceux/luaScripts/BoulderDash_AmoebaAI.lua +share/fceux/luaScripts/BugsBunnyBirthdayBlowout.lua +share/fceux/luaScripts/ButtonCount.lua +share/fceux/luaScripts/CustomLagIndicator_RvT.lua +share/fceux/luaScripts/Excitingbike-speedometeronly.lua +share/fceux/luaScripts/Excitingbike.lua +share/fceux/luaScripts/FRKfunctions.lua +share/fceux/luaScripts/GUI-iup_button.lua +share/fceux/luaScripts/GUI-iup_example.lua +share/fceux/luaScripts/Galaxian.lua +share/fceux/luaScripts/Gradius-BulletHell.lua +share/fceux/luaScripts/Luabot.lua +share/fceux/luaScripts/Machrider.lua +share/fceux/luaScripts/MegamanII-LaserEyes.lua +share/fceux/luaScripts/MemoryWatch.lua +share/fceux/luaScripts/Multitrack.lua +share/fceux/luaScripts/Multitrack2.lua +share/fceux/luaScripts/NightmareElmStreet-4Player.lua +share/fceux/luaScripts/PunchOutChallenge.lua +share/fceux/luaScripts/PunchOutStats.lua +share/fceux/luaScripts/PunchOutTraining.lua +share/fceux/luaScripts/RBIBaseball.lua +share/fceux/luaScripts/Registerfind(CheatSearch).lua +share/fceux/luaScripts/Rewinder.lua +share/fceux/luaScripts/SMB-AreaScrambler.lua +share/fceux/luaScripts/SMB-CompetitionRecorder.lua +share/fceux/luaScripts/SMB-HitBoxes.lua +share/fceux/luaScripts/SMB-Jetpack.lua +share/fceux/luaScripts/SMB-Lives&HPDisplay.lua +share/fceux/luaScripts/SMB-Mouse.lua +share/fceux/luaScripts/SMB-Snow.lua +share/fceux/luaScripts/SMB2U.lua +share/fceux/luaScripts/SMB3-RainbowRiding.lua +share/fceux/luaScripts/ShowPalette.lua +share/fceux/luaScripts/SoundDisplay.lua +share/fceux/luaScripts/SoundDisplay2.lua +share/fceux/luaScripts/Subtitler.lua +share/fceux/luaScripts/TeenageMutantNinjaTurtles.lua +share/fceux/luaScripts/UsingLuaBot-Documentation.txt +share/fceux/luaScripts/UsingLuaScripting-Documentation.txt +share/fceux/luaScripts/UsingLuaScripting-ListofFunctions.txt +share/fceux/luaScripts/ZapperDisplay.lua +share/fceux/luaScripts/ZapperFun.lua +share/fceux/luaScripts/luabot_framework.lua +share/fceux/luaScripts/m_utils.lua +share/fceux/luaScripts/shapedefs.lua +share/fceux/luaScripts/taseditor/ +share/fceux/luaScripts/taseditor/InputDisplay_for_Selection.lua +share/fceux/luaScripts/taseditor/InvertSelection.lua +share/fceux/luaScripts/taseditor/RecordBackwards.lua +share/fceux/luaScripts/taseditor/ShowNotes.lua +share/fceux/luaScripts/taseditor/Swap1P2P.lua +share/fceux/luaScripts/taseditor/TrackNoise.lua +share/fceux/luaScripts/tetris.lua +share/fceux/luaScripts/vnb.lua +share/fceux/luaScripts/x_functions.lua +share/fceux/luaScripts/x_interface.lua +share/fceux/luaScripts/x_smb1enemylist.lua +share/fceux/palettes/ +share/fceux/palettes/ASQ_realityA.pal +share/fceux/palettes/ASQ_realityB.pal +share/fceux/palettes/BMF_final2.pal +share/fceux/palettes/BMF_final3.pal +share/fceux/palettes/FCEU-13-default_nitsuja.pal +share/fceux/palettes/FCEU-15-nitsuja_new.pal +share/fceux/palettes/FCEUX.pal +share/fceux/palettes/nestopia_rgb.pal +share/fceux/palettes/nestopia_yuv.pal +share/fceux/taseditor.chm +share/fceux/tools/ +share/fceux/tools/taseditor_patterns.txt