rpms/bsnes/F-10 README.bsnes, NONE, 1.1 bsnes-0.037a-strip.patch, NONE, 1.1 bsnes-system-zlib.patch, NONE, 1.1 bsnes.desktop, NONE, 1.1 bsnes.spec, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2

Julian Sikorski belegdol at rpmfusion.org
Fri Dec 5 00:35:51 CET 2008


Author: belegdol

Update of /cvs/nonfree/rpms/bsnes/F-10
In directory se02.es.rpmfusion.net:/tmp/cvs-serv9636/F-10

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/F-10/.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:35:50 -0000	1.2
@@ -0,0 +1 @@
+bsnes_v037a.tar.bz2


Index: sources
===================================================================
RCS file: /cvs/nonfree/rpms/bsnes/F-10/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:35:50 -0000	1.2
@@ -0,0 +1 @@
+9fa2fbae8a09a747f9b4a44123bde0bb  bsnes_v037a.tar.bz2



More information about the rpmfusion-commits mailing list