Author: musuruan
Update of /cvs/free/rpms/fceux/F-17
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv9103
Modified Files:
.cvsignore fceux.spec sources
Added Files:
fceux-2.2.1-fix_format_string_security_error.patch
fceux-2.2.1-set-script-and-palette-gtkfilechooser-default-directory.patch
fceux-2.2.1-use_system_lua.patch
Removed Files:
fceux-2.1.5-datatype-gz.patch fceux-2.1.5-gcc47.patch
fceux-2.1.5-minizip.patch fceux-2.1.5-underlink.patch
Log Message:
* Tue Apr 02 2013 Andrea Musuruane <musuruan(a)gmail.com> - 2.2.1-1
- Updated to new upstream realease
- Packaged fceux-net-server too
- Imported Debian patches
- Enabled LUA scripting
fceux-2.2.1-fix_format_string_security_error.patch:
sdl.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- NEW FILE fceux-2.2.1-fix_format_string_security_error.patch ---
--- fceux.orig/src/drivers/sdl/sdl.cpp
+++ fceux/src/drivers/sdl/sdl.cpp
@@ -934,7 +934,7 @@
if(gtkIsStarted == true && noGui == 0)
{
GtkWidget* d;
- d = gtk_message_dialog_new(GTK_WINDOW(MainWindow), GTK_DIALOG_MODAL,
GTK_MESSAGE_ERROR, GTK_BUTTONS_OK, errormsg);
+ d = gtk_message_dialog_new(GTK_WINDOW(MainWindow), GTK_DIALOG_MODAL,
GTK_MESSAGE_ERROR, GTK_BUTTONS_OK, "%s", errormsg);
gtk_dialog_run(GTK_DIALOG(d));
gtk_widget_destroy(d);
}
fceux-2.2.1-set-script-and-palette-gtkfilechooser-default-directory.patch:
gui.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
--- NEW FILE fceux-2.2.1-set-script-and-palette-gtkfilechooser-default-directory.patch
---
Description: Set default GtkFileChooser directory for scripts and palettes
The lua scripts and palettes are installed in /usr/share/fceux/ by this
package. Make the GtkFileChooser open up the correct directories in question
by default, improving usability.
Author: Alexander Toresson <alexander.toresson(a)gmail.com>
Forwarded: not-needed
--- fceux.orig/src/drivers/sdl/gui.cpp
+++ fceux/src/drivers/sdl/gui.cpp
@@ -225,7 +225,7 @@
fileChooser = gtk_file_chooser_dialog_new ("Open NES Palette",
GTK_WINDOW(MainWindow),
GTK_FILE_CHOOSER_ACTION_OPEN, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL);
- gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(fileChooser), getcwd(NULL, 0));
+ gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(fileChooser),
"/usr/share/fceux/palettes");
if (gtk_dialog_run (GTK_DIALOG (fileChooser)) ==GTK_RESPONSE_ACCEPT)
{
@@ -1509,6 +1509,7 @@
const char* last_file;
g_config->getOption("SDL.LastLoadLua", &last_file);
gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(fileChooser), last_file);
+ gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(fileChooser),
"/usr/share/fceux/luaScripts");
if (gtk_dialog_run (GTK_DIALOG (fileChooser)) ==GTK_RESPONSE_ACCEPT)
{
fceux-2.2.1-use_system_lua.patch:
SConstruct | 5 +++--
src/lua-engine.cpp | 10 +---------
2 files changed, 4 insertions(+), 11 deletions(-)
--- NEW FILE fceux-2.2.1-use_system_lua.patch ---
Description: Use system Lua 5.1 instead of bundled version
FCEUX not only has a bundled version of Lua 5.1, it relies on being able
to access internal data structures in the Lua library which were never meant
to be accessed from outside, and do thus not provide a stable API, and FCEUX
would then potentially need to be rebuilt from source when a new version of
Lua 5.1 is released (if any).
This patch removes the optimization in FCEUX that was relying on being able
to access these data structures, and links it against the system-installed
version of the lua library..
Author: Alexander Toresson <alexander.toresson(a)gmail.com>
Author: Joe Nahmias <jello(a)debian.org>
--- fceux.orig/SConstruct
+++ fceux/SConstruct
@@ -43,7 +43,7 @@
env['LSB_FIRST'] = 0
# Default compiler flags:
-env.Append(CCFLAGS = ['-Wall', '-Wno-write-strings',
'-Wno-sign-compare', '-Isrc/lua/src'])
+env.Append(CCFLAGS = ['-Wall', '-Wno-write-strings',
'-Wno-sign-compare'])
if os.environ.has_key('PLATFORM'):
env.Replace(PLATFORM = os.environ['PLATFORM'])
@@ -77,7 +77,7 @@
env['LIBS'] = ['wsock32'];
if env['PLATFORM'] == 'win32':
- env.Append(CPPPATH = [".", "drivers/win/",
"drivers/common/", "drivers/", "drivers/win/zlib",
"drivers/win/directx", "drivers/win/lua/include"])
+ env.Append(CPPPATH = [".", "drivers/win/",
"drivers/common/", "drivers/", "drivers/win/zlib",
"drivers/win/directx"])
env.Append(CPPDEFINES = ["PSS_STYLE=2", "WIN32",
"_USE_SHARED_MEMORY_", "NETWORK", "FCEUDEF_DEBUGGER",
"NOMINMAX", "NEED_MINGW_HACKS", "_WIN32_IE=0x0600"])
env.Append(LIBS = ["rpcrt4", "comctl32", "vfw32",
"winmm", "ws2_32", "comdlg32", "ole32",
"gdi32", "htmlhelp"])
else:
@@ -126,6 +126,7 @@
env.Append(CCFLAGS = ["-DLUA_USE_LINUX"])
lua_available = False
if conf.CheckLib('lua5.1'):
+ env.Append(CCFLAGS = ["-I/usr/include/lua5.1"])
env.Append(LINKFLAGS = ["-ldl", "-llua5.1"])
lua_available = True
elif conf.CheckLib('lua'):
--- fceux.orig/src/lua-engine.cpp
+++ fceux/src/lua-engine.cpp
@@ -53,7 +53,6 @@
#include <lua.h>
#include <lauxlib.h>
#include <lualib.h>
-#include <lstate.h>
#ifdef WIN32
int iuplua_open(lua_State * L);
int iupcontrolslua_open(lua_State * L);
@@ -1157,17 +1156,10 @@
if (lua_isfunction(L, -1))
{
- // since the scriptdata can be very expensive to load
- // (e.g. the registered save function returned some huge tables)
- // check the number of parameters the registered load function expects
- // and don't bother loading the parameters it wouldn't receive anyway
- int numParamsExpected = (L->top - 1)->value.gc->cl.l.p->numparams; //
NOTE: if this line crashes, that means your Lua headers are out of sync with your Lua lib
- if(numParamsExpected) numParamsExpected--; // minus one for the savestate number we
always pass in
-
int prevGarbage = lua_gc(L, LUA_GCCOUNT, 0);
lua_pushinteger(L, savestateNumber);
- saveData.LoadRecord(L, LUA_DATARECORDKEY, numParamsExpected);
+ saveData.LoadRecord(L, LUA_DATARECORDKEY, (unsigned int) -1);
int n = lua_gettop(L) - 1;
int ret = lua_pcall(L, n, 0, 0);
Index: .cvsignore
===================================================================
RCS file: /cvs/free/rpms/fceux/F-17/.cvsignore,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- .cvsignore 1 May 2012 09:47:08 -0000 1.2
+++ .cvsignore 7 Apr 2013 17:41:06 -0000 1.3
@@ -1 +1 @@
-fceux-2.1.5.src.tar.bz2
+fceux-2.2.1.src.tar.gz
Index: fceux.spec
===================================================================
RCS file: /cvs/free/rpms/fceux/F-17/fceux.spec,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- fceux.spec 1 May 2012 09:47:08 -0000 1.1
+++ fceux.spec 7 Apr 2013 17:41:07 -0000 1.2
@@ -1,31 +1,25 @@
Name: fceux
-Version: 2.1.5
-Release: 2%{?dist}
+Version: 2.2.1
+Release: 1%{?dist}
Summary: A cross platform, NTSC and PAL Famicom/NES emulator
Group: Applications/Emulators
License: GPLv2+
URL:
http://fceux.com/
-Source:
http://downloads.sourceforge.net/fceultra/%{name}-%{version}.src.tar.bz2
-# Fix compiling
-#
https://bugs.gentoo.org/show_bug.cgi?id=406471
-# Upstream SVN rev 2395
-Patch0: %{name}-2.1.5-datatype-gz.patch
-# Fix underlinking
-#
https://bugs.gentoo.org/show_bug.cgi?id=367675
-#
http://sourceforge.net/tracker/?func=detail&aid=3522221&group_id=...
-Patch1: %{name}-2.1.5-underlink.patch
-# Use system minizip
-#
https://sourceforge.net/tracker/?func=detail&aid=3520369&group_id...
-Patch2: %{name}-2.1.5-minizip.patch
-# Fix compiling with GCC 4.7
-# Upstream SVN rev 2484
-Patch3: %{name}-2.1.5-gcc47.patch
+Source:
http://downloads.sourceforge.net/fceultra/%{name}-%{version}.src.tar.gz
+# Patches from Debian
+# Fix format string
+Patch0: %{name}-2.2.1-fix_format_string_security_error.patch
+# Set default GtkFileChooser directory for scripts and palettes
+Patch1:
%{name}-2.2.1-set-script-and-palette-gtkfilechooser-default-directory.patch
+# Use system Lua instead of bundled version
+Patch2: %{name}-2.2.1-use_system_lua.patch
BuildRequires: scons
BuildRequires: SDL-devel >= 1.2.14
BuildRequires: gtk2-devel >= 2.18
BuildRequires: gd-devel
+BuildRequires: lua-devel >= 5.1
BuildRequires: minizip-devel
BuildRequires: desktop-file-utils
Requires: hicolor-icon-theme
@@ -47,16 +41,28 @@
Scripters, and the Tool-Assisted Speedrun Community.
+%package net-server
+Summary: Server for the FCEUX emulator
+
+%description net-server
+FCEUX clients can connect to this server and play multiplayer NES games over
+the network.
+
+
%prep
-%setup -q -n fceu%{version}
-%patch0 -p2
-%patch1 -p0
+%setup -q
+%patch0 -p1
+%patch1 -p1
%patch2 -p1
-%patch3 -p1
-# Remove binary files
-rm -rf bin/fceux
-rm -rf src/fceux
+# Remove windows binary
+rm fceux-server/fceux-net-server.exe
+
+# Remove ~attic directories
+find . -name '~attic' -type d -prune -exec rm -rf {} \;
+
+# Remove Visual Studio directory
+rm -rf vc
# Remove bundled LUA library
rm -rf src/lua
@@ -64,14 +70,11 @@
# Remove bundled minizip library
rm -rf src/utils/unzip.*
-sed -i 's/^unzip.cpp//' src/utils/SConscript
-
-# Remove default CFLAGS
-sed -i 's/^env.Append(CCFLAGS/#env.Append(CCFLAGS/' SConstruct
# Fix end-of-line-encoding
-sed -i 's/\r//' Authors.txt changelog.txt TODO-PROJECT \
- documentation/Videolog.txt
+sed -i 's/\r//' changelog.txt NewPPUtests.txt \
+ documentation/Videolog.txt \
+ fceux-server/{AUTHORS,ChangeLog,README}
# Fix icon path in desktop file
sed -i 's/\/usr\/share\/pixmaps\/fceux.png/fceux/' fceux.desktop
@@ -79,17 +82,23 @@
%build
export CFLAGS="%{optflags}"
-# Disable LUA support
+# Enable system minizip
# Enable AVI creation
scons %{?_smp_mflags} \
- LUA=0 \
+ SYSTEM_MINIZIP=1 \
CREATE_AVI=1
%install
-# Install binary file
+# Install binary files
install -d %{buildroot}%{_bindir}
-install -p -m 755 src/fceux %{buildroot}%{_bindir}
+install -p -m 755 bin/fceux %{buildroot}%{_bindir}
+install -p -m 755 bin/fceux-net-server %{buildroot}%{_bindir}
+
+# Install data
+install -d %{buildroot}%{_datadir}/%{name}
+install -p -m 644 bin/auxlib.lua %{buildroot}%{_datadir}/%{name}
+cp -pR output/* %{buildroot}%{_datadir}/%{name}
# Install icon
install -d %{buildroot}%{_datadir}/icons/hicolor/32x32/apps
@@ -101,10 +110,17 @@
--dir %{buildroot}%{_datadir}/applications \
%{name}.desktop
-# Install man page
+# Install man pages
install -d %{buildroot}%{_mandir}/man6
-install -p -m 644 documentation/%{name}.6 \
- %{buildroot}%{_mandir}/man6/%{name}.6
+install -p -m 644 documentation/fceux.6 \
+ %{buildroot}%{_mandir}/man6/
+install -p -m 644 documentation/fceux-net-server.6 \
+ %{buildroot}%{_mandir}/man6/
+
+# Install config file
+install -d %{buildroot}%{_sysconfdir}
+install -p -m 644 fceux-server/fceux-server.conf \
+ %{buildroot}%{_sysconfdir}
%post
@@ -123,15 +139,31 @@
%files
-%{_bindir}/fceux
+%{_bindir}/%{name}
+%{_datadir}/%{name}
%{_datadir}/applications/%{name}.desktop
%{_datadir}/icons/hicolor/*/apps/%{name}.png
%{_mandir}/man6/%{name}.6*
-%doc Authors.txt changelog.txt COPYING README-SDL TODO-PROJECT TODO-SDL
-%doc documentation/{cheat.html,faq,todo,Videolog.txt}
+%doc Authors changelog.txt COPYING NewPPUtests.txt README-SDL TODO-SDL
+%doc documentation/{cheat.html,faq,todo,TODO-PROJECT,Videolog.txt}
+
+%files net-server
+%{_bindir}/fceux-net-server
+%config(noreplace) %{_sysconfdir}/fceux-server.conf
+%{_mandir}/man6/fceux-net-server.6*
+%doc fceux-server/{AUTHORS,ChangeLog,COPYING,README}
%changelog
+* Tue Apr 02 2013 Andrea Musuruane <musuruan(a)gmail.com> - 2.2.1-1
+- Updated to new upstream realease
+- Packaged fceux-net-server too
+- Imported Debian patches
+- Enabled LUA scripting
+
+* Sun Mar 03 2013 Nicolas Chauvet <kwizart(a)gmail.com> - 2.1.5-3
+- Mass rebuilt for Fedora 19 Features
+
* Sat Apr 28 2012 Andrea Musuruane <musuruan(a)gmail.com> 2.1.5-2
- Obsoleted gfceu too
- Notified upstream about underlinking
Index: sources
===================================================================
RCS file: /cvs/free/rpms/fceux/F-17/sources,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- sources 1 May 2012 09:47:08 -0000 1.2
+++ sources 7 Apr 2013 17:41:07 -0000 1.3
@@ -1 +1 @@
-e8b20e62bbbb061b1a59d51b47c827bd fceux-2.1.5.src.tar.bz2
+696d0186afb17f3b70d4aa9e9f5cf1d1 fceux-2.2.1.src.tar.gz
--- fceux-2.1.5-datatype-gz.patch DELETED ---
--- fceux-2.1.5-gcc47.patch DELETED ---
--- fceux-2.1.5-minizip.patch DELETED ---
--- fceux-2.1.5-underlink.patch DELETED ---