Author: belegdol
Update of /cvs/free/rpms/bsnes/devel
In directory se02.es.rpmfusion.net:/tmp/cvs-serv32157
Modified Files:
README.bsnes bsnes.spec
Added Files:
bsnes-0.079-systemwide.patch
Removed Files:
bsnes-0.072-nocheats.patch bsnes-0.079-crashfix.patch
bsnes-0.079-nocheats.patch
Log Message:
- Try to handle system-wide cheats, filters and shaders properly
- Switched to accuracy profile (slower)
- Switched to gtk ui
bsnes-0.079-systemwide.patch:
Makefile | 3 ---
general/main-window.cpp | 12 ++++++++++++
2 files changed, 12 insertions(+), 3 deletions(-)
--- NEW FILE bsnes-0.079-systemwide.patch ---
diff -up bsnes_v079-source/bsnes/ui/general/main-window.cpp.systemwide
bsnes_v079-source/bsnes/ui/general/main-window.cpp
--- bsnes_v079-source/bsnes/ui/general/main-window.cpp.systemwide 2011-03-15
02:39:33.000000000 +0100
+++ bsnes_v079-source/bsnes/ui/general/main-window.cpp 2011-06-22 20:52:10.609866683
+0200
@@ -412,6 +412,12 @@ void MainWindow::setupFiltersAndShaders(
#endif
files = directory::files(folderPath, "*.filter");
}
+#if defined(PLATFORM_X)
+ if(files.size() == 0) {
+ folderPath = "/usr/lib/bsnes/filters/";
+ files = directory::files(folderPath, "*.filter");
+ }
+#endif
foreach(filename, files) {
settingsVideoFilterName.append({ folderPath, filename });
}
@@ -458,6 +464,12 @@ void MainWindow::setupFiltersAndShaders(
#endif
files = directory::files(folderPath, { "*.", config.video.driver,
".shader" });
}
+#if defined(PLATFORM_X)
+ if(files.size() == 0) {
+ folderPath = "/usr/share/bsnes/shaders/";
+ files = directory::files(folderPath, {"*.", config.video.driver,
".shader" });
+ }
+#endif
foreach(filename, files) {
settingsVideoShaderName.append({ folderPath, filename });
}
diff -up bsnes_v079-source/bsnes/ui/Makefile.systemwide
bsnes_v079-source/bsnes/ui/Makefile
--- bsnes_v079-source/bsnes/ui/Makefile.systemwide 2011-03-15 00:58:22.000000000 +0100
+++ bsnes_v079-source/bsnes/ui/Makefile 2011-06-22 20:52:08.648872996 +0200
@@ -96,9 +96,6 @@ ifeq ($(platform),x)
endif
install -D -m 644 data/bsnes.png $(DESTDIR)$(prefix)/share/pixmaps/bsnes.png
install -D -m 644 data/bsnes.desktop
$(DESTDIR)$(prefix)/share/applications/bsnes.desktop
- mkdir -p ~/.config/bsnes
- cp data/cheats.xml ~/.config/bsnes/cheats.xml
- chmod 777 ~/.config/bsnes ~/.config/bsnes/cheats.xml
uninstall:
ifeq ($(platform),x)
Index: README.bsnes
===================================================================
RCS file: /cvs/free/rpms/bsnes/devel/README.bsnes,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- README.bsnes 14 Jul 2009 11:35:19 -0000 1.3
+++ README.bsnes 22 Jun 2011 20:01:55 -0000 1.4
@@ -1,18 +1,12 @@
RPM Fusion bsnes package
==============================================================================
-1. Problems with PulseAudio
+RPM Fusion bsnes package is patched to install cheat.xml, filters and shaders
+in system-wide location. If you run into issues using these, please don't
+complain to upstream, but use RPM Fusion bugzilla first.
+
+Moreover, due to [1] newer versions of bsnes are more strict when it comes to
+file formats accepted. The snespurify-qt utility can be used to convert the
+images. They have to be uncompressed.
-There are slight problems with some of the bsnes audio drivers and PulseAudio. Namely,
the libao driver will not work, and the OSS driver will not work with padsp. Other drivers
work with the default Fedora configuration. Please note that the emulator author
recommends using the ALSA driver over the native PulseAudio one due to limitations in the
latter. bsnes audio drivers can be changed by going to Settings -> Configuration ->
Advanced. 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.
+[1]
http://byuu.org/bsnes/legacy-formats
Index: bsnes.spec
===================================================================
RCS file: /cvs/free/rpms/bsnes/devel/bsnes.spec,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -r1.41 -r1.42
--- bsnes.spec 20 Jun 2011 22:50:44 -0000 1.41
+++ bsnes.spec 22 Jun 2011 20:01:55 -0000 1.42
@@ -11,8 +11,8 @@
Source0:
http://bsnes.googlecode.com/files/%{name}_v%{vernumber}-source.tar.bz2
Source2: README.bsnes
Patch0: bsnes-0.079-gcc46.patch
-Patch1: bsnes-0.079-crashfix.patch
-Patch2: bsnes-0.079-nocheats.
+Patch1: bsnes-0.079-systemwide.patch
+Patch2: bsnes-0.079-gtk.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
#bsnes does not use system snes_ntsc because the modified video processing
@@ -20,11 +20,11 @@
#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: pulseaudio-libs-devel
BuildRequires: SDL-devel
-BuildRequires: qt-devel
Obsoletes: %{name}-pixelshaders < 0.064
Obsoletes: %{name}-snesfilter < 0.079
@@ -43,9 +43,8 @@
%prep
%setup -q -n %{name}_v%{vernumber}-source
%patch0 -p1 -b .gcc46
-%patch1 -p1 -b .crashfix
-%patch2 -p1 -b .nocheats
-
+%patch1 -p1 -b .systemwide
+%patch2 -p1 -b .gtk
#fix permissions
find . -type f -not -name \*.sh -exec chmod 644 {} \;
@@ -53,20 +52,24 @@
#use system optflags
sed -i "s/-O3/$RPM_OPT_FLAGS/" bsnes/Makefile
sed -i "s/-O3/$RPM_OPT_FLAGS -fPIC/" snesfilter/Makefile
-sed -i "s/-O3/$RPM_OPT_FLAGS/" snespurify/cc-qt.sh
+sed -i "s/-O3/$RPM_OPT_FLAGS/" snespurify/cc-gtk.sh
#don't strip the binaries prematurely
sed -i "s/link += -s/link +=/" bsnes/Makefile
sed -i "s/link := -s/link :=/" snesfilter/Makefile
-sed -i "s/-s //" snespurify/cc-qt.sh
+sed -i "s/-s //" snespurify/cc-gtk.sh
#use the proper compiler and moc commands
-sed -i "s/g++-4.5/g++/" snespurify/cc-qt.sh
-sed -i "s/moc/moc-qt4/" snespurify/cc-qt.sh
+sed -i "s/g++-4.5/g++/" snespurify/cc-gtk.sh
#install fedora-specific readme
install -pm 644 %{SOURCE2} README.Fedora
+#use proper system-wide paths for filters and cheats.xml
+sed -i
's@path.home("cheats.xml")@"/usr/share/bsnes/cheats.xml"(a)' \
+ bsnes/ui/tools/cheat-database.cpp
+sed -i 's@/usr/lib@%{_libdir}@' bsnes/ui/general/main-window.cpp
+
%build
pushd bsnes
@@ -76,7 +79,7 @@
make %{?_smp_mflags} compiler=gcc
popd
pushd snespurify
-./cc-qt.sh
+./cc-gtk.sh
popd
@@ -90,9 +93,9 @@
popd
install -d $RPM_BUILD_ROOT%{_datadir}/%{name}
install -pm 644 bsnes/data/cheats.xml $RPM_BUILD_ROOT%{_datadir}/%{name}
-install -d $RPM_BUILD_ROOT%{_libexecdir}/%{name}/filters
-install -pm 755 snesfilter/out/*.filter $RPM_BUILD_ROOT%{_libexecdir}/%{name}/filters
-install -pm 755 snespurify/snespurify-qt $RPM_BUILD_ROOT%{_bindir}
+install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/filters
+install -pm 755 snesfilter/out/*.filter $RPM_BUILD_ROOT%{_libdir}/%{name}/filters
+install -pm 755 snespurify/snespurify-gtk $RPM_BUILD_ROOT%{_bindir}
install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/shaders
install -pm 644 snesshader/*.shader $RPM_BUILD_ROOT%{_datadir}/%{name}/shaders
@@ -104,8 +107,8 @@
%defattr(-,root,root,-)
%doc README.Fedora
%{_bindir}/bsnes
-%{_bindir}/snespurify-qt
-%{_libexecdir}/bsnes
+%{_bindir}/snespurify-gtk
+%{_libdir}/bsnes
%{_datadir}/bsnes
%{_datadir}/pixmaps/bsnes.png
%{_datadir}/applications/rpmfusion-bsnes.desktop
@@ -116,7 +119,10 @@
- Updated to 0.079
- Dropped subpackages, they are too small to be worth it
- Updated the Fedora readme
-- Added patches by Themaister
+- Added gcc-4.6 and systemwide patches by Themaister
+- Try to handle system-wide cheats, filters and shaders properly
+- Switched to accuracy profile (slower)
+- Switched to gtk ui
* Sun Nov 21 2010 Julian Sikorski <belegdol(a)fedoraproject.org> - 0.072-1
- Updated to 0.072
--- bsnes-0.072-nocheats.patch DELETED ---
--- bsnes-0.079-crashfix.patch DELETED ---
--- bsnes-0.079-nocheats.patch DELETED ---