[BlockOutII] Update to 2.4 Fix building with new libpng
Hans de Goede
jwrdegoede at fedoraproject.org
Wed Dec 14 11:01:21 UTC 2011
commit 1154e8cb4ecdc9bf02ef617af21f609b762f09e6
Author: Hans de Goede <hdegoede at redhat.com>
Date: Wed Dec 14 12:02:13 2011 +0100
Update to 2.4
Fix building with new libpng
.gitignore | 3 +
BlockOutII-2.3-64bit.patch | 4 +-
BlockOutII-2.3-bl2Home.patch | 4 +-
BlockOutII-2.3-libpng15.patch | 21 ++++++++
BlockOutII-2.3-music.patch | 4 +-
BlockOutII-2.3-restore-resolution.patch | 17 ++++--
BlockOutII-2.3-syslibs.patch | 8 ++--
BlockOutII.spec | 82 ++++++++++++++++---------------
sources | 4 +-
9 files changed, 90 insertions(+), 57 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 6c79ebd..e243091 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,4 @@
BlockOutII-2.3.tar.bz2
+/bl24-src-linux-i586.tar.gz
+/music.ogg
+/README.txt
diff --git a/BlockOutII-2.3-64bit.patch b/BlockOutII-2.3-64bit.patch
index 02d02f1..4441ff3 100644
--- a/BlockOutII-2.3-64bit.patch
+++ b/BlockOutII-2.3-64bit.patch
@@ -1,6 +1,6 @@
diff -up BlockOutII-2.3/contrib/ImageLib/src/jpg/jpegdecoder.cpp~ BlockOutII-2.3/contrib/ImageLib/src/jpg/jpegdecoder.cpp
---- BlockOutII-2.3/contrib/ImageLib/src/jpg/jpegdecoder.cpp~ 2007-11-25 22:43:11.000000000 +0100
-+++ BlockOutII-2.3/contrib/ImageLib/src/jpg/jpegdecoder.cpp 2007-11-25 22:43:11.000000000 +0100
+--- BlockOutII-2.3/ImageLib/src/jpg/jpegdecoder.cpp~ 2007-11-25 22:43:11.000000000 +0100
++++ BlockOutII-2.3/ImageLib/src/jpg/jpegdecoder.cpp 2007-11-25 22:43:11.000000000 +0100
@@ -106,7 +106,7 @@ void *jpeg_decoder::alloc(int n)
blocks[i] = q;
diff --git a/BlockOutII-2.3-bl2Home.patch b/BlockOutII-2.3-bl2Home.patch
index 0a97b38..4901606 100644
--- a/BlockOutII-2.3-bl2Home.patch
+++ b/BlockOutII-2.3-bl2Home.patch
@@ -1,6 +1,6 @@
diff -up BlockOutII-2.3/BlockOut_GL/Utils.cpp~ BlockOutII-2.3/BlockOut_GL/Utils.cpp
---- BlockOutII-2.3/BlockOut_GL/Utils.cpp~ 2007-11-25 23:01:12.000000000 +0100
-+++ BlockOutII-2.3/BlockOut_GL/Utils.cpp 2007-11-25 23:01:12.000000000 +0100
+--- BlockOutII-2.3/BlockOut/Utils.cpp~ 2007-11-25 23:01:12.000000000 +0100
++++ BlockOutII-2.3/BlockOut/Utils.cpp 2007-11-25 23:01:12.000000000 +0100
@@ -162,13 +162,7 @@ BOOL CheckEnv() {
return FALSE;
}
diff --git a/BlockOutII-2.3-libpng15.patch b/BlockOutII-2.3-libpng15.patch
new file mode 100644
index 0000000..0524716
--- /dev/null
+++ b/BlockOutII-2.3-libpng15.patch
@@ -0,0 +1,21 @@
+diff -up BlockOutII-2.3/contrib/ImageLib/src/png/hpng.c~ BlockOutII-2.3/contrib/ImageLib/src/png/hpng.c
+--- BlockOutII-2.3/ImageLib/src/png/hpng.c~ 2011-12-14 11:07:35.000000000 +0100
++++ BlockOutII-2.3/ImageLib/src/png/hpng.c 2011-12-14 11:09:53.542044115 +0100
+@@ -45,7 +45,7 @@ int LoadPngImage(PNG_IMAGE *d) {
+ // ---------------- Error handling
+
+ png_set_error_fn(png,NULL,my_png_error,NULL);
+- if (setjmp(png->jmpbuf)) {
++ if (setjmp(png_jmpbuf(png))) {
+ png_destroy_read_struct(&png, &info, &endinfo);
+ return 0;
+ }
+@@ -154,7 +154,7 @@ char *WritePngImage(char *file_name,unsi
+ {
+ sprintf(PngErrorMessage,"png_create_info_struct() failed");
+ fclose(fp);
+- png_destroy_write_struct(&png_ptr, png_infopp_NULL);
++ png_destroy_write_struct(&png_ptr, info_ptr);
+ return PngErrorMessage;
+ }
+
diff --git a/BlockOutII-2.3-music.patch b/BlockOutII-2.3-music.patch
index ef995c9..9e03e10 100644
--- a/BlockOutII-2.3-music.patch
+++ b/BlockOutII-2.3-music.patch
@@ -1,6 +1,6 @@
diff -up BlockOutII-2.3/BlockOut_GL/SoundManager.cpp~ BlockOutII-2.3/BlockOut_GL/SoundManager.cpp
---- BlockOutII-2.3/BlockOut_GL/SoundManager.cpp~ 2007-11-25 23:13:00.000000000 +0100
-+++ BlockOutII-2.3/BlockOut_GL/SoundManager.cpp 2007-11-25 23:13:00.000000000 +0100
+--- BlockOutII-2.3/BlockOut/SoundManager.cpp~ 2007-11-25 23:13:00.000000000 +0100
++++ BlockOutII-2.3/BlockOut/SoundManager.cpp 2007-11-25 23:13:00.000000000 +0100
@@ -142,7 +142,7 @@ void SoundManager::PlayHit() {
void SoundManager::PlayMusic() {
diff --git a/BlockOutII-2.3-restore-resolution.patch b/BlockOutII-2.3-restore-resolution.patch
index b4c02d9..d554d02 100644
--- a/BlockOutII-2.3-restore-resolution.patch
+++ b/BlockOutII-2.3-restore-resolution.patch
@@ -1,6 +1,6 @@
diff -up BlockOutII-2.3/BlockOut_GL/GLApp/GLApp.cpp.fs BlockOutII-2.3/BlockOut_GL/GLApp/GLApp.cpp
---- BlockOutII-2.3/BlockOut_GL/GLApp/GLApp.cpp.fs 2007-08-02 15:44:10.000000000 +0200
-+++ BlockOutII-2.3/BlockOut_GL/GLApp/GLApp.cpp 2007-11-30 20:46:53.000000000 +0100
+--- BlockOutII-2.3/BlockOut/GLApp/GLApp.cpp.fs 2007-08-02 15:44:10.000000000 +0200
++++ BlockOutII-2.3/BlockOut/GLApp/GLApp.cpp 2007-11-30 20:46:53.000000000 +0100
@@ -20,30 +20,8 @@ GLApplication::GLApplication() {
int GLApplication::ToggleFullscreen() {
@@ -43,13 +43,18 @@ diff -up BlockOutII-2.3/BlockOut_GL/GLApp/GLApp.cpp.fs BlockOutII-2.3/BlockOut_G
//SDL_GL_SetAttribute(SDL_GL_SWAP_CONTROL, 0);
SDL_EnableUNICODE( 1 );
-diff -up BlockOutII-2.3/BlockOut_GL/BlockOut.cpp.fs BlockOutII-2.3/BlockOut_GL/BlockOut.cpp
---- BlockOutII-2.3/BlockOut_GL/BlockOut.cpp.fs 2007-08-02 15:44:09.000000000 +0200
-+++ BlockOutII-2.3/BlockOut_GL/BlockOut.cpp 2007-11-30 20:44:24.000000000 +0100
-@@ -120,7 +120,7 @@ int BlockOut::FrameMove()
+diff -up bl24_lin_src/BlockOut/BlockOut.cpp~ bl24_lin_src/BlockOut/BlockOut.cpp
+--- bl24_lin_src/BlockOut/BlockOut.cpp~ 2008-01-09 19:29:06.000000000 +0100
++++ bl24_lin_src/BlockOut/BlockOut.cpp 2011-12-14 11:28:44.430028964 +0100
+@@ -128,12 +128,7 @@ int BlockOut::FrameMove()
break;
case 100: // Exit
InvalidateDeviceObjects();
+- BOOL fs = theSetup.GetFullScreen();
+- if (fs) {
+- theSetup.SetFullScreen(!fs);
+- UpdateFullScreen();
+- }
- _exit(0);
+ exit(0);
break;
diff --git a/BlockOutII-2.3-syslibs.patch b/BlockOutII-2.3-syslibs.patch
index e4aa68f..128e7d6 100644
--- a/BlockOutII-2.3-syslibs.patch
+++ b/BlockOutII-2.3-syslibs.patch
@@ -1,6 +1,6 @@
diff -up BlockOutII-2.3/contrib/ImageLib/src/Makefile~ BlockOutII-2.3/contrib/ImageLib/src/Makefile
---- BlockOutII-2.3/contrib/ImageLib/src/Makefile~ 2007-11-25 22:38:29.000000000 +0100
-+++ BlockOutII-2.3/contrib/ImageLib/src/Makefile 2007-11-25 22:38:29.000000000 +0100
+--- BlockOutII-2.3/ImageLib/src/Makefile~ 2007-11-25 22:38:29.000000000 +0100
++++ BlockOutII-2.3/ImageLib/src/Makefile 2007-11-25 22:38:29.000000000 +0100
@@ -9,25 +9,11 @@
# All source files needed for the library
#
@@ -30,8 +30,8 @@ diff -up BlockOutII-2.3/contrib/ImageLib/src/Makefile~ BlockOutII-2.3/contrib/Im
#---------------------------------------------------------------------
diff -up BlockOutII-2.3/contrib/ImageLib/src/png/hpng.c~ BlockOutII-2.3/contrib/ImageLib/src/png/hpng.c
---- BlockOutII-2.3/contrib/ImageLib/src/png/hpng.c~ 2007-11-25 22:39:13.000000000 +0100
-+++ BlockOutII-2.3/contrib/ImageLib/src/png/hpng.c 2007-11-25 22:39:13.000000000 +0100
+--- BlockOutII-2.3/ImageLib/src/png/hpng.c~ 2007-11-25 22:39:13.000000000 +0100
++++ BlockOutII-2.3/ImageLib/src/png/hpng.c 2007-11-25 22:39:13.000000000 +0100
@@ -1,6 +1,6 @@
#include <malloc.h>
#include <math.h>
diff --git a/BlockOutII.spec b/BlockOutII.spec
index caf137b..2354c6c 100644
--- a/BlockOutII.spec
+++ b/BlockOutII.spec
@@ -4,30 +4,25 @@
# package are under the same license as the package itself.
Name: BlockOutII
-Version: 2.3
-Release: 9%{?dist}
+Version: 2.4
+Release: 1%{?dist}
Summary: A free adaptation of the original BlockOut DOS game
Group: Amusements/Games
License: GPLv2+
URL: http://www.blockout.net/blockout2/
-# To regenerate:
-# cvs -z3 -d:pserver:anonymous at blockout.cvs.sourceforge.net:/cvsroot/blockout co -D 2007-11-25 -P blockout
-# mv blockout BlockOutII-2.3
-# cd BlockOutII-2.3
-# rm -r `find -name CVS` contrib/dxsdk8.rar contrib/D3DTools BlockOut/setup
-# rm -r CVSROOT contrib/ImageLib/src/png/png contrib/ImageLib/src/png/zlib
-# mp32ogg BlockOut/sounds/music.mp3
-# cd ..
-# tar cvfj BlockOutII-2.3.tar.bz2 BlockOutII-2.3
-Source0: %{name}-%{version}.tar.bz2
-Source1: %{name}.desktop
-Source2: %{name}.png
+Source0: http://downloads.sourceforge.net/blockout/bl24-src-linux-i586.tar.gz
+# From: http://downloads.sourceforge.net/blockout/bl24-bin-linux-i586.tar.gz
+Source1: README.txt
+# This is music.mp3 from Source0 converted to ogg format using mp32ogg
+Source2: music.ogg
+Source3: %{name}.desktop
+Source4: %{name}.png
Patch0: BlockOutII-2.3-syslibs.patch
Patch1: BlockOutII-2.3-64bit.patch
Patch2: BlockOutII-2.3-bl2Home.patch
Patch3: BlockOutII-2.3-music.patch
Patch4: BlockOutII-2.3-restore-resolution.patch
-BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+Patch5: BlockOutII-2.3-libpng15.patch
BuildRequires: SDL_mixer-devel libpng-devel desktop-file-utils
Requires: hicolor-icon-theme opengl-games-utils
@@ -46,37 +41,45 @@ Pons.
%prep
-%setup -q
+%setup -q -n bl24_lin_src
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
-%patch4 -p1 -z .fs
-chmod -x `find -type f`
-iconv -f ISO8859-1 -t UTF8 BlockOut/README.txt > t; mv t BlockOut/README.txt
+%patch4 -p1
+%patch5 -p1
+
+# Convert the README and put it somewhere we can use it from %%doc
+iconv -f ISO8859-1 -t UTF8 %{SOURCE1} > t; mv t BlockOut/README.txt
+touch -r %{SOURCE1} BlockOut/README.txt
+
+# Remove bundled png library
+rm -r ImageLib/src/png/png ImageLib/src/png/zlib
+
+# Replace music.mp3 with music.ogg
+rm BlockOut/sounds/music.mp3
+cp -a %{SOURCE2} BlockOut/sounds
%build
-pushd contrib/ImageLib/src
+pushd ImageLib/src
make %{?_smp_mflags} CFLAGS="$RPM_OPT_FLAGS -Dlinux -c" \
CXXFLAGS="$RPM_OPT_FLAGS -Dlinux -c"
popd
-pushd BlockOut_GL
+pushd BlockOut
make %{?_smp_mflags} \
- CXXFLAGS="$RPM_OPT_FLAGS -Dlinux `sdl-config --cflags` -I../contrib/ImageLib/src -c" \
- SDL_ROOT=%{_prefix} LIBS="-L../contrib/ImageLib/src -lpng -lz" \
- IMGLIB_ROOT=../contrib/ImageLib/src
+ CXXFLAGS="$RPM_OPT_FLAGS -Dlinux `sdl-config --cflags` -I../ImageLib/src -c" \
+ LIBS="-L../ImageLib/src -lpng -lz"
popd
%install
-rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT%{_bindir}
mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name}/images
mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name}/sounds
-install -m 755 BlockOut_GL/blockout $RPM_BUILD_ROOT%{_bindir}/%{name}
+install -m 755 BlockOut/blockout $RPM_BUILD_ROOT%{_bindir}/%{name}
ln -s opengl-game-wrapper.sh $RPM_BUILD_ROOT%{_bindir}/%{name}-wrapper
install -p -m 644 BlockOut/images/* $RPM_BUILD_ROOT%{_datadir}/%{name}/images
install -p -m 644 BlockOut/sounds/* $RPM_BUILD_ROOT%{_datadir}/%{name}/sounds
@@ -85,31 +88,26 @@ install -p -m 644 BlockOut/sounds/* $RPM_BUILD_ROOT%{_datadir}/%{name}/sounds
mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications
desktop-file-install --vendor fedora \
--dir $RPM_BUILD_ROOT%{_datadir}/applications \
- %{SOURCE1}
+ %{SOURCE3}
mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps
-install -p -m 644 %{SOURCE2} \
+install -p -m 644 %{SOURCE4} \
$RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps
-%clean
-rm -rf $RPM_BUILD_ROOT
-
-
%post
-touch --no-create %{_datadir}/icons/hicolor || :
-if [ -x %{_bindir}/gtk-update-icon-cache ]; then
- %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
-fi
+touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
%postun
-touch --no-create %{_datadir}/icons/hicolor || :
-if [ -x %{_bindir}/gtk-update-icon-cache ]; then
- %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
+if [ $1 -eq 0 ] ; then
+ touch --no-create %{_datadir}/icons/hicolor &>/dev/null
+ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
fi
+%posttrans
+gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
+
%files
-%defattr(-,root,root,-)
%doc BlockOut/README.txt
%{_bindir}/%{name}*
%{_datadir}/%{name}
@@ -118,6 +116,10 @@ fi
%changelog
+* Wed Dec 14 2011 Hans de Goede <hdegoede at redhat.com> - 2.4-1
+- Update to 2.4
+- Fix building with new libpng
+
* Tue Dec 06 2011 Adam Jackson <ajax at redhat.com> - 2.3-9
- Rebuild for new libpng
diff --git a/sources b/sources
index 9388d0f..302b88a 100644
--- a/sources
+++ b/sources
@@ -1 +1,3 @@
-2aeac4d00a36ae570a12b5561832de6a BlockOutII-2.3.tar.bz2
+40f899491c38edfbbd984ba732417d7d bl24-src-linux-i586.tar.gz
+ca2e9c44ae209874b0168ab3d816d710 music.ogg
+d6cb81853ab99d65a9f4f4c9ceff9058 README.txt
More information about the scm-commits
mailing list