Author: belegdol
Update of /cvs/nonfree/rpms/bsnes/devel
In directory se02.es.rpmfusion.net:/tmp/cvs-serv9093/devel
Modified Files:
.cvsignore sources
Added Files:
README.bsnes bsnes-0.037a-strip.patch bsnes-system-zlib.patch
bsnes.desktop bsnes.spec
Log Message:
Initial RPM Fusion import
--- NEW FILE README.bsnes ---
RPM Fusion bsnes package
==============================================================================
1. Problems with PulseAudio
bsnes does not work very well with PulseAudio, which is enabled in Fedora by
default. With one exception, trying to use it will result in 100 % CPU usage
and necessity to kill the program. The emulator has four audio drivers:
ALSA, libao, OpenAL and OSS. It is possible to make bsnes work using the
following workarounds:
- ALSA: will not work with default Fedora config, you need to remove
alsa-plugins-pulseaudio or disable the said plugin
- OpenAL: works with default Fedora config
- libao: will not work with default Fedora config, you need to change the libao
driver to something different than pulse (but if you change it to alsa, you
will need to disable the alsa pulse plugin as well)
- OSS: works with default Fedora config, will not work with padsp
bsnes audio drivers can be changed by going to Settings -> Configuration ->
Drivers. Program needs to be restarted for the changes to have effect.
2. Using system zlib
This is the post byuu made on zsnes boards when asked to merge the system-zlib
patch (it was more complex at that stage, using system libs was optional, but
since it was not going to be merged anyway, I decided to make it simpler):
I don't really want to add this change to bsnes, no. A system-wide zlib would
require a DLL for Windows, and I see no reason to provide a lean, stripped
down zlib along with bsnes for Windows users, yet have an option to use the
system version for Linux (especially when there is no similar lib for JMA),
just to appease a few people with nothing better to do than complain about
random garbage.
However, feel free to appease the Fedora development team by changing that in
your source tree if you like. My sincere apologies that you'll have to keep
backporting the change.
I don't want any part in trying to appease these people. They constantly bring
up crap about non-commercial clauses, about using a 64-byte IPLROM, about
compiling in support for OSS by default, and now about a massive ~80kb that
can be shaved off the bsnes binary by adding extra dependencies to the
emulator. Perhaps I should just start offering a raw Linux binary on my
website ala nVidia, Macromedia et al.
bsnes-0.037a-strip.patch:
--- NEW FILE bsnes-0.037a-strip.patch ---
--- src/Makefile.strip 2008-10-17 14:35:28.000000000 +0200
+++ src/Makefile 2008-11-27 14:28:51.000000000 +0100
@@ -11,7 +11,6 @@
cpp = $(subst cc,++,$(compiler)) $(flags)
obj = o
rule = -c $< -o $@
- link = -s
mkbin = -o$1
mkdef = -D$1
mklib = -l$1
bsnes-system-zlib.patch:
--- NEW FILE bsnes-system-zlib.patch ---
--- src/Makefile.system-zlib 2008-02-15 11:16:23.000000000 +0100
+++ src/Makefile 2008-02-15 11:28:12.000000000 +0100
@@ -82,6 +82,7 @@
ifeq ($(enable_gzip),true)
objects += adler32 compress crc32 deflate gzio inffast inflate inftrees ioapi trees
unzip zip zutil
flags += $(call mkdef,GZIP_SUPPORT)
+ link += $(shell pkg-config --libs minizip)
endif
ifeq ($(enable_jma),true)
--- src/reader/zipreader.h.system-zlib 2008-10-17 12:14:16.000000000 +0200
+++ src/reader/zipreader.h 2008-11-29 21:36:02.000000000 +0100
@@ -1,4 +1,4 @@
-#include "zlib/unzip.h"
+#include <minizip/unzip.h>
#define ZIP_MAX_FILE_NAME PATH_MAX
--- src/reader/gzreader.h.system-zlib 2005-12-18 10:20:14.000000000 +0100
+++ src/reader/gzreader.h 2008-02-15 11:25:45.000000000 +0100
@@ -1,4 +1,4 @@
-#include "zlib/zlib.h"
+#include <zlib.h>
class GZReader : public Reader {
private:
--- NEW FILE bsnes.desktop ---
[Desktop Entry]
Name=bsnes
Comment=SNES Emulator
Exec=bsnes
Icon=bsnes
Terminal=false
Type=Application
Categories=Game;Emulator;
--- NEW FILE bsnes.spec ---
%define vernumber 037a
Name: bsnes
Version: 0.%{vernumber}
Release: 5%{?dist}
Summary: SNES emulator focused on accuracy
Group: Applications/Emulators
License: Redistributable, no modification permitted
URL:
http://byuu.cinnamonpirate.com/?page=bsnes
Source0:
http://byuu.cinnamonpirate.com/files/%{name}_v%{vernumber}.tar.bz2
Source1: bsnes.desktop
Source2: README.bsnes
Patch0: bsnes-0.037a-strip.patch
Patch1: bsnes-system-zlib.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
#bsnes does not use system snes_ntsc because the modified video processing
#filter algorithm calls back into bsnes specific c++ colortable code, that
#isn't available when the library is built stand alone
BuildRequires: desktop-file-utils
BuildRequires: freealut-devel
BuildRequires: gtk2-devel
BuildRequires: libao-devel
BuildRequires: libXv-devel
BuildRequires: libXtst-devel
BuildRequires: minizip-devel
BuildRequires: SDL-devel
BuildRequires: yasm
#libco, which is used by bsnes, only supports these
ExclusiveArch: i386 x86_64
%description
bsnes is an emulator that began development on 2004-10-14. The purpose of the
emulator is a bit different from other emulators: it focuses on accuracy,
debugging functionality, and clean code.
The emulator does not focus on things that would hinder accuracy. This
includes speed and game-specific hacks for compatibility. As a result, the
minimum system requirements for bsnes are quite high.
%prep
%setup -qc
%patch0 -p0 -b .strip
%patch1 -p0 -b .system-zlib
#fix permissions and line endings
chmod 644 license.txt readme.txt
sed -i 's/\r//' license.txt readme.txt
find src -type f \( -name \*.cpp -or -name \*.hpp -or -name \*.h -or -name \*.c \) -exec
chmod 644 {} \;
find src -type f \( -name \*.cpp -or -name \*.hpp -or -name \*.h -or -name \*.c \) -exec
sed -i 's/\r//' {} \;
#use system optflags
sed -i "s#flags = -O3#flags = %{optflags}#" src/Makefile
#install fedora-specific readme
install -pm 644 %{SOURCE2} README.Fedora
%build
pushd src
make %{?_smp_mflags} platform=x compiler=gcc enable_gzip=true enable_jma=true
%install
rm -rf $RPM_BUILD_ROOT
pushd src
make install DESTDIR=$RPM_BUILD_ROOT prefix=%{_prefix}
desktop-file-install --vendor=rpmfusion \
--dir $RPM_BUILD_ROOT%{_datadir}/applications %{SOURCE1}
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root,-)
%doc license.txt readme.txt README.Fedora
%{_bindir}/bsnes
%{_datadir}/icons/bsnes.png
%{_datadir}/applications/rpmfusion-bsnes.desktop
%changelog
* Fri Dec 5 2008 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.037a-5
- Explained why system snes_ntsc is not used
- Explained why ExclusiveArch is used
* Sun Nov 30 2008 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.037a-4
- Fixed README.Fedora permissions
- Added information concerning pulseaudio issues
* Sat Nov 29 2008 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.037a-3
- Keep -fomit-frame-pointer
- $(strip) can stay
- Re-added system zlib patch
* Thu Nov 27 2008 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.037a-2
- Patched the Makefile not to strip the binaries
* Sun Nov 23 2008 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.037a-1
- Updated to 0.037a
- Dropped system zlib patch since bsnes uses zlib modified to support non-ansi filenames
- Added libXtst-devel to BuildRequires
- s/%%{ix86}/i386 to work around plague problem
* Tue Sep 16 2008 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.036-1
- Updated to 0.036
* Mon Aug 25 2008 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.035-1
- Updated to 0.035
* Sun Aug 10 2008 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.033-1
- Updated to 0.033
* Wed May 28 2008 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.032a-1
- Updated to 0.032a
* Sun May 25 2008 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.032-1
- Updated to 0.032
* Mon Apr 14 2008 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.031-1
- Updated to 0.031
* Thu Mar 27 2008 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.030-1
- Updated to 0.030
* Mon Mar 17 2008 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.029-1
- Updated to 0.029
- Dropped usleep patch
- Dropped destdir patch
- Updated system zlib patch
- Included patch approval
* Fri Feb 15 2008 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.028.01-2
- Patched to fix CPU usage when idle
- Patched to use system zlib
- Dropped hicolor-icon-theme from Requires
* Sun Feb 10 2008 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.028.01-1
- Updated to 0.028.01
- Updated the Makefile patch
- Added freealut-devel and SDL-devel to BuildRequires
* Tue Dec 25 2007 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.027-1
- Updated to 0.027
- Updated the Makefile patch
- Switched to yasm for all supported architectures
* Sun Nov 18 2007 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.026-1
- Updated to 0.026
- Dropped icon conversion, PNG is now shipped in the tarball
- Icon is now installed to %%{_datadir}/pixmaps
- Dropped the icon cache scriptlets
- Dropped the wrapper, it is no longer necessary
- Added zip/gzip and jma support
* Mon Nov 5 2007 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.025-4
- Fixed permissions and line endings of source files as well
- Fixed cart.db permissions, got missing in previous release
- Fixed date in %%changelog
* Mon Nov 5 2007 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.025-3
- Updated the scriptlets to be in par with current guidelines
- Changed to convert the icon at build time
- Use the wrapper to avoid putting cart.db into %%{_bindir}
* Sun Nov 4 2007 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.025-2
- Install cart.db
- Use system optflags
- Adjusted the License tag
* Sun Nov 4 2007 Julian Sikorski <belegdol[at]gmail[dot]com> - 0.025-1
- Initial RPM release
Index: .cvsignore
===================================================================
RCS file: /cvs/nonfree/rpms/bsnes/devel/.cvsignore,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- .cvsignore 3 Dec 2008 20:26:20 -0000 1.1
+++ .cvsignore 4 Dec 2008 23:33:52 -0000 1.2
@@ -0,0 +1 @@
+bsnes_v037a.tar.bz2
Index: sources
===================================================================
RCS file: /cvs/nonfree/rpms/bsnes/devel/sources,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- sources 3 Dec 2008 20:26:20 -0000 1.1
+++ sources 4 Dec 2008 23:33:52 -0000 1.2
@@ -0,0 +1 @@
+9fa2fbae8a09a747f9b4a44123bde0bb bsnes_v037a.tar.bz2