Date: Thu, 13 Mar 2014 03:32:38 +0900 From: KATO Tsuguru <tkato432@yahoo.com> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/187493: emulators/fceux: Support STRIP properly Message-ID: <20140313033238.7a0d2b88886a9b0b4e7abbc9@yahoo.com> Resent-Message-ID: <201403121840.s2CIe0GW044670@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 187493 >Category: ports >Synopsis: emulators/fceux: Support STRIP properly >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Wed Mar 12 18:40:00 UTC 2014 >Closed-Date: >Last-Modified: >Originator: KATO Tsuguru >Release: FreeBSD 8.4-RELEASE-p7 i386 >Organization: >Environment: >Description: - Support STRIP properly - Support compiler USES macro - Support COPYTREE_SHARE - Fix pathname in desktop entry file Remove file: files/patch-SConstruct files/patch-src-lua-engine >How-To-Repeat: >Fix: diff -urN /usr/ports/emulators/fceux/Makefile emulators/fceux/Makefile --- /usr/ports/emulators/fceux/Makefile 2014-03-11 06:22:51.000000000 +0900 +++ emulators/fceux/Makefile 2014-03-13 00:00:00.000000000 +0900 @@ -3,146 +3,98 @@ PORTNAME= fceux PORTVERSION= 2.2.2 -PORTREVISION= 1 +PORTREVISION= 2 +DISTVERSIONSUFFIX= .src CATEGORIES= emulators MASTER_SITES= SF/fceultra/Source%20Code/${PORTVERSION}%20src/ -DISTNAME= ${PORTNAME}-${PORTVERSION}.src MAINTAINER= ports@FreeBSD.org COMMENT= Portable NES/Famicom emulator based on Bero's original FCE LICENSE= GPLv2 -USES= dos2unix pkgconfig scons -SCONS_BUILDENV= CC="${CC}" CXX="${CXX}" \ - CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" \ - CPPFLAGS="${CPPFLAGS} -I${LOCALBASE}/include" \ - LDFLAGS="${LDFLAGS} -L${LOCALBASE}/lib" -SCONS_ARGS+= --prefix="${STAGEDIR}${PREFIX}" -USE_SDL= yes +RUN_DEPENDS= zenity:${PORTSDIR}/x11/zenity WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION} -RUN_DEPENDS+= zenity:${PORTSDIR}/x11/zenity +USES= compiler:c++0x desktop-file-utils dos2unix pkgconfig scons +USE_SDL= sdl -OPTIONS_DEFINE= FRAMESKIP OPENGL DEBUG LUA CREATE_AVI LOGO -OPTIONS_SINGLE= GUI +LDFLAGS+= -L${LOCALBASE}/lib + +OPTIONS_DEFINE= CREATE_AVI DEBUG DOCS FRAMESKIP LOGO LUA OPENGL +OPTIONS_SINGLE= GUI OPTIONS_SINGLE_GUI= GTK2 GTK3 -OPTIONS_DEFAULT= FRAMESKIP OPENGL LUA NEWPPU CREATE_AVI LOGO GTK2 +OPTIONS_DEFAULT= CREATE_AVI FRAMESKIP GTK2 LOGO LUA OPENGL +CREATE_AVI_DESC= Enable avi creation support +CREATE_AVI_MAKE_ARGS= CREATE_AVI=1 +CREATE_AVI_MAKE_ARGS_OFF= CREATE_AVI=0 +DEBUG_MAKE_ARGS= DEBUG=1 +DEBUG_MAKE_ARGS_OFF= DEBUG=0 FRAMESKIP_DESC= Enable frameskipping -LUA_DESC= Enable Lua support -CREATE_AVI_DESC= Enable avi creation support (SDL) -LOGO_DESC= Enable a logoscreen when creating avis (SDL) -GTK2_DESC= Enable GTK2 GUI (SDL) -GTK3_DESC= Enable GTK3 GUI (SDL) +FRAMESKIP_MAKE_ARGS= FRAMESKIP=1 +FRAMESKIP_MAKE_ARGS_OFF= FRAMESKIP=0 +GTK2_USE= GNOME=gtk20 +GTK2_MAKE_ARGS= GTK=1 +GTK2_MAKE_ARGS_OFF= GTK=0 +GTK3_USE= GNOME=gtk30 +GTK3_MAKE_ARGS= GTK3=1 +GTK3_MAKE_ARGS_OFF= GTK3=0 +LOGO_DESC= Enable a logoscreen when creating avis +LOGO_LIB_DEPENDS= libgd.so:${PORTSDIR}/graphics/gd +LOGO_MAKE_ARGS= LOGO=1 +LOGO_MAKE_ARG_OFF= LOGO=0 +LUA_USE= LUA=yes +LUA_MAKE_ARGS= LUA=1 SYSTEM_LUA=1 +LUA_MAKE_ARGS_OFF= LUA=0 +OPENGL_USE= GL=gl +OPENGL_MAKE_ARGS= OPENGL=1 +OPENGL_MAKE_ARGS_OFF= OPENGL=0 .include <bsd.port.options.mk> -.if ${PORT_OPTIONS:MFRAMESKIP} -SCONS_ARGS+= FRAMESKIP=1 -.else -SCONS_ARGS+= FRAMESKIP=0 -.endif - -.if ${PORT_OPTIONS:MGTK2} -SCONS_ARGS+= GTK=1 -USE_GNOME+= gtk20 -.else -SCONS_ARGS+= GTK=0 -.endif - -.if ${PORT_OPTIONS:MGTK3} -SCONS_ARGS+= GTK3=1 -USE_GNOME+= gtk30 -.else -SCONS_ARGS+= GTK3=0 -.endif - -.if ${PORT_OPTIONS:MLUA} -SCONS_ARGS+= LUA=1 SYSTEM_LUA=1 -USE_LUA= yes -.else -SCONS_ARGS+= LUA=0 -.endif - -.if ${PORT_OPTIONS:MLOGO} -SCONS_ARGS+= LOGO=1 CREATE_AVI=1 -LIB_DEPENDS+= libgd.so:${PORTSDIR}/graphics/gd -.else -SCONS_ARG+= LOGO=0 +.if ${PORT_OPTIONS:MLOGO} && empty(PORT_OPTIONS:MCREATE_AVI) +IGNORE= LOGO support requires CREATE_AVI support .endif -.if ${PORT_OPTIONS:MOPENGL} -SCONS_ARGS+= OPENGL=1 -USE_GL= gl -.else -SCONS_ARGS+= OPENGL=0 -.endif - -.if ${PORT_OPTIONS:MCREATE_AVI} -SCONS_ARGS+= CREATE_AVI=1 -.else -SCONS_ARGS+= CREATE_AVI=0 -.endif - -.if ${PORT_OPTIONS:MDEBUG} -SCONS_ARGS+= DEBUG=1 -.else -SCONS_ARGS+= DEBUG=0 -.endif - -# Go find a better compiler, base cc does not support mm3dnow.h, -# breaking the build: -# -# In file included from src/drivers/videolog/rgbtorgb.cpp:14: -# src/drivers/videolog/simd.h:13:56: error: mm3dnow.h: No such file or directory -# -# Use clang if in /usr/bin, else set USE_GCC: -# -.if (empty(CC:T:Mgcc4*) && empty(CC:T:Mclang*)) || (empty(CXX:T:Mg??4*) && empty(CXX:T:Mclang++*)) -.if (${OSVERSION} >= 900014) && (exists(/usr/bin/clang++) && exists(/usr/bin/clang)) -CC= /usr/bin/clang -CXX= /usr/bin/clang++ -CPP= /usr/bin/clang-cpp -.else -USE_GCC= yes -.endif -.endif - -post-extract: - @${RM} ${WRKSRC}/output/*.dll ${WRKSRC}/output/*.chm - post-patch: - ${REINPLACE_CMD} -e 's|pkg-config|%%PKGCONFIG%%|g' \ - ${WRKSRC}/SConstruct - ${REINPLACE_CMD} -e 's|sdl-config|%%SDLCONFIG%%|g' \ - ${WRKSRC}/SConstruct - ${REINPLACE_CMD} -e 's|%%PKGCONFIG%%|${LOCALBASE}/bin/pkgconf|g' \ - -e 's|%%SDLCONFIG%%|${LOCALBASE}/bin/sdl-config|g' \ - ${WRKSRC}/SConstruct - ${REINPLACE_CMD} -e 's|usr|usr/local|g' ${WRKSRC}/fceux.desktop - ${REINPLACE_CMD} -e '107 s|Exit(1)|#Exit(1)|g' \ - ${WRKSRC}/SConstruct - ${REINPLACE_CMD} -e '194 s|/usr/local|${STAGEDIR}${PREFIX}|g' \ - ${WRKSRC}/SConstruct - -post-install: -.if ${PORT_OPTIONS:MDOCS} + @${REINPLACE_CMD} -e \ + '/PUBLIC/s|^|#| ; \ + /CheckLib/s|lua5.1|lua-${LUA_VER}| ; \ + /LINKFLAGS/s|"-ldl",|| ; \ + /LINKFLAGS/s|lua5.1|lua-${LUA_VER}| ; \ + s|/usr/include/lua5.1|${LUA_INCDIR}| ; \ + s|-O2||' ${WRKSRC}/SConstruct + @${REINPLACE_CMD} -e \ + 's|/usr/bin/|| ; \ + s|/usr/share/|${PREFIX}/share/|' ${WRKSRC}/fceux.desktop + +do-install: +.for i in fceux fceux-net-server + (cd ${WRKSRC}/bin && ${INSTALL_PROGRAM} ${i} \ + ${STAGEDIR}${PREFIX}/bin) + (cd ${WRKSRC}/documentation && ${INSTALL_MAN} ${i}.6 \ + ${STAGEDIR}${MANPREFIX}/man/man6) +.endfor + @${MKDIR} ${STAGEDIR}${DATADIR} + (cd ${WRKSRC}/bin && ${INSTALL_DATA} *.lua \ + ${STAGEDIR}${DATADIR}) +.for i in luaScripts palettes tools + @(cd ${WRKSRC}/output && ${COPYTREE_SHARE} ${i} \ + ${STAGEDIR}${DATADIR}) +.endfor + (cd ${WRKSRC} && ${INSTALL_DATA} *.desktop \ + ${STAGEDIR}${DESKTOPDIR}) + (cd ${WRKSRC} && ${INSTALL_DATA} *.png \ + ${STAGEDIR}${PREFIX}/share/pixmaps) @${MKDIR} ${STAGEDIR}${DOCSDIR} -.for file in TODO-PROJECT Videolog.txt cheat.html faq fcs.txt fm2.txt protocol.txt snes9x-lua.html - @${CP} ${WRKSRC}/documentation/${file} ${STAGEDIR}${DOCSDIR} +.for i in TODO-PROJECT Videolog.txt cheat.html faq fcs.txt fm2.txt \ + protocol.txt snes9x-lua.html + (cd ${WRKSRC}/documentation && ${INSTALL_DATA} ${i} \ + ${STAGEDIR}${DOCSDIR}) .endfor - @${MV} ${WRKSRC}/documentation/tech ${STAGEDIR}${DOCSDIR} -.endif - ${MKDIR} ${STAGEDIR}${PREFIX}/share/applications - ${INSTALL_DATA} ${WRKSRC}/fceux.desktop \ - ${STAGEDIR}${PREFIX}/share/applications/fceux.desktop - @${INSTALL_DATA} ${WRKSRC}/fceux.png \ - ${STAGEDIR}${PREFIX}/share/pixmaps/fceux.png - @${INSTALL_MAN} ${WRKSRC}/documentation/fceux-net-server.6 \ - ${STAGEDIR}${MAN6PREFIX}/man/man6 - @${INSTALL_MAN} ${WRKSRC}/documentation/fceux.6 \ - ${STAGEDIR}${MAN6PREFIX}/man/man6 + @(cd ${WRKSRC}/documentation && ${COPYTREE_SHARE} tech \ + ${STAGEDIR}${DOCSDIR}) .include <bsd.port.mk> diff -urN /usr/ports/emulators/fceux/files/patch-SConstruct emulators/fceux/files/patch-SConstruct --- /usr/ports/emulators/fceux/files/patch-SConstruct 2014-03-09 19:56:08.000000000 +0900 +++ emulators/fceux/files/patch-SConstruct 1970-01-01 09:00:00.000000000 +0900 @@ -1,38 +0,0 @@ ---- SConstruct.bak 2013-12-28 05:22:18.356797171 -0600 -+++ SConstruct 2013-12-28 05:23:52.750132324 -0600 -@@ -138,8 +138,8 @@ - # 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('lua-5.1'): -+ env.Append(LINKFLAGS = ["-llua-5.1"]) - env.Append(CCFLAGS = ["-I/usr/include/lua5.1"]) - lua_available = True - elif conf.CheckLib('lua'): -@@ -207,18 +207,18 @@ - auxlib_dst = 'bin/auxlib.lua' - auxlib_inst_dst = prefix + '/share/fceux/auxlib.lua' - --fceux_h_src = 'output/fceux.chm' --fceux_h_dst = 'bin/fceux.chm' -+#fceux_h_src = 'output/fceux.chm' -+#fceux_h_dst = 'bin/fceux.chm' - --env.Command(fceux_h_dst, fceux_h_src, [Copy(fceux_h_dst, fceux_h_src)]) --env.Command(fceux_dst, fceux_src, [Copy(fceux_dst, fceux_src)]) -+#env.Command(fceux_h_dst, fceux_h_src, [Copy(fceux_h_dst, fceux_h_src)]) -+#env.Command(fceux_dst, fceux_src, [Copy(fceux_dst, fceux_src)]) - env.Command(fceux_net_server_dst, fceux_net_server_src, [Copy(fceux_net_server_dst, fceux_net_server_src)]) - env.Command(auxlib_dst, auxlib_src, [Copy(auxlib_dst, auxlib_src)]) - - 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 -urN /usr/ports/emulators/fceux/files/patch-src-lua-engine emulators/fceux/files/patch-src-lua-engine --- /usr/ports/emulators/fceux/files/patch-src-lua-engine 2014-03-09 19:56:22.000000000 +0900 +++ emulators/fceux/files/patch-src-lua-engine 1970-01-01 09:00:00.000000000 +0900 @@ -1,15 +0,0 @@ ---- src/lua-engine.cpp.bak 2013-12-28 06:09:01.096799825 -0600 -+++ src/lua-engine.cpp 2013-12-28 06:10:59.276805867 -0600 -@@ -83,9 +83,9 @@ - - extern "C" - { --#include <lua.h> --#include <lauxlib.h> --#include <lualib.h> -+#include <lua51/lua.h> -+#include <lua51/lauxlib.h> -+#include <lua51/lualib.h> - #ifdef WIN32 - #include <lstate.h> - int iuplua_open(lua_State * L); diff -urN /usr/ports/emulators/fceux/pkg-descr emulators/fceux/pkg-descr --- /usr/ports/emulators/fceux/pkg-descr 2013-11-06 22:06:18.000000000 +0900 +++ emulators/fceux/pkg-descr 2014-03-13 00:00:00.000000000 +0900 @@ -1,12 +1,11 @@ -FCE Ultra is an NTSC and PAL Famicom/NES emulator for various -platforms. It is based upon Bero's original FCE source code. Current +FCE Ultra is an NTSC and PAL Famicom/NES emulator for various +platforms. It is based upon Bero's original FCE source code. Current features include good PPU, CPU, pAPU, expansion chip, and joystick -emulation. Also a feature unique to this emulator(at the current -time) is authentic Game Genie emulation. Save states and snapshot -features also have been implemented. The VS Unisystem is emulated -as well. FCE Ultra supports iNES format ROM images, UNIF format ROM -images, headerless and FWNES style FDS disk images, and NSF files. +emulation. Also a feature unique to this emulator (at the current time) +is authentic Game Genie emulation. Save states and snapshot features +also have been implemented. The VS Unisystem is emulated as well. -FCE Ultra currently supports the following iNES mappers(many partially): +FCE Ultra supports iNES format ROM images, UNIF format ROM images, +headerless and FWNES style FDS disk images, and NSF files. WWW: http://www.fceux.com/ diff -urN /usr/ports/emulators/fceux/pkg-plist emulators/fceux/pkg-plist --- /usr/ports/emulators/fceux/pkg-plist 2014-03-09 19:56:04.000000000 +0900 +++ emulators/fceux/pkg-plist 2014-03-13 00:00:00.000000000 +0900 @@ -1,7 +1,31 @@ bin/fceux bin/fceux-net-server +man/man6/fceux.6.gz +man/man6/fceux-net-server.6.gz share/applications/fceux.desktop -share/pixmaps/fceux.png +%%PORTDOCS%%%%DOCSDIR%%/TODO-PROJECT +%%PORTDOCS%%%%DOCSDIR%%/Videolog.txt +%%PORTDOCS%%%%DOCSDIR%%/cheat.html +%%PORTDOCS%%%%DOCSDIR%%/faq +%%PORTDOCS%%%%DOCSDIR%%/fcs.txt +%%PORTDOCS%%%%DOCSDIR%%/fm2.txt +%%PORTDOCS%%%%DOCSDIR%%/protocol.txt +%%PORTDOCS%%%%DOCSDIR%%/snes9x-lua.html +%%PORTDOCS%%%%DOCSDIR%%/tech/cpu/4017.txt +%%PORTDOCS%%%%DOCSDIR%%/tech/cpu/dmc.txt +%%PORTDOCS%%%%DOCSDIR%%/tech/cpu/nessound-4th.txt +%%PORTDOCS%%%%DOCSDIR%%/tech/cpu/nessound.txt +%%PORTDOCS%%%%DOCSDIR%%/tech/exp/mmc5-e.txt +%%PORTDOCS%%%%DOCSDIR%%/tech/exp/smb2j.txt +%%PORTDOCS%%%%DOCSDIR%%/tech/exp/tengen.txt +%%PORTDOCS%%%%DOCSDIR%%/tech/exp/vrcvi.txt +%%PORTDOCS%%%%DOCSDIR%%/tech/exp/vrcvii.txt +%%PORTDOCS%%%%DOCSDIR%%/tech/nsfspec.txt +%%PORTDOCS%%%%DOCSDIR%%/tech/ppu/2c02 technical operation.txt +%%PORTDOCS%%%%DOCSDIR%%/tech/ppu/loopy1.txt +%%PORTDOCS%%%%DOCSDIR%%/tech/ppu/loopy2.txt +%%PORTDOCS%%%%DOCSDIR%%/tech/readme.now +%%PORTDOCS%%%%DOCSDIR%%/tech/readme.sound %%DATADIR%%/auxlib.lua %%DATADIR%%/luaScripts/AVI-HeadsUpDisplay.lua %%DATADIR%%/luaScripts/BoulderDash_AmoebaAI.lua @@ -72,31 +96,7 @@ %%DATADIR%%/palettes/nestopia_rgb.pal %%DATADIR%%/palettes/nestopia_yuv.pal %%DATADIR%%/tools/taseditor_patterns.txt -%%PORTDOCS%%%%DOCSDIR%%/TODO-PROJECT -%%PORTDOCS%%%%DOCSDIR%%/Videolog.txt -%%PORTDOCS%%%%DOCSDIR%%/cheat.html -%%PORTDOCS%%%%DOCSDIR%%/faq -%%PORTDOCS%%%%DOCSDIR%%/fcs.txt -%%PORTDOCS%%%%DOCSDIR%%/fm2.txt -%%PORTDOCS%%%%DOCSDIR%%/protocol.txt -%%PORTDOCS%%%%DOCSDIR%%/snes9x-lua.html -%%PORTDOCS%%%%DOCSDIR%%/tech/cpu/4017.txt -%%PORTDOCS%%%%DOCSDIR%%/tech/cpu/dmc.txt -%%PORTDOCS%%%%DOCSDIR%%/tech/cpu/nessound-4th.txt -%%PORTDOCS%%%%DOCSDIR%%/tech/cpu/nessound.txt -%%PORTDOCS%%%%DOCSDIR%%/tech/exp/mmc5-e.txt -%%PORTDOCS%%%%DOCSDIR%%/tech/exp/smb2j.txt -%%PORTDOCS%%%%DOCSDIR%%/tech/exp/tengen.txt -%%PORTDOCS%%%%DOCSDIR%%/tech/exp/vrcvi.txt -%%PORTDOCS%%%%DOCSDIR%%/tech/exp/vrcvii.txt -%%PORTDOCS%%%%DOCSDIR%%/tech/nsfspec.txt -%%PORTDOCS%%%%DOCSDIR%%/tech/ppu/2c02 technical operation.txt -%%PORTDOCS%%%%DOCSDIR%%/tech/ppu/loopy1.txt -%%PORTDOCS%%%%DOCSDIR%%/tech/ppu/loopy2.txt -%%PORTDOCS%%%%DOCSDIR%%/tech/readme.now -%%PORTDOCS%%%%DOCSDIR%%/tech/readme.sound -man/man6/fceux-net-server.6.gz -man/man6/fceux.6.gz +share/pixmaps/fceux.png @dirrm %%DATADIR%%/tools @dirrm %%DATADIR%%/palettes @dirrm %%DATADIR%%/luaScripts/taseditor >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20140313033238.7a0d2b88886a9b0b4e7abbc9>