Compare commits
3 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
58ecc45df9 | ||
|
|
3d3cdfde75 | ||
|
|
53cb33497f |
7 changed files with 14470 additions and 1 deletions
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
abuse_sdl-0.7.0.tar.bz2
|
||||||
76
abuse.spec
Normal file
76
abuse.spec
Normal file
|
|
@ -0,0 +1,76 @@
|
||||||
|
Name: abuse
|
||||||
|
Version: 0.7.0
|
||||||
|
Release: 3%{?dist}
|
||||||
|
Summary: The classic Crack-Dot-Com game
|
||||||
|
Group: Amusements/Games
|
||||||
|
License: GPL
|
||||||
|
URL: http://www.labyrinth.net.au/~trandor/abuse/
|
||||||
|
Source0: http://www.labyrinth.net.au/~trandor/files/abuse_sdl-%{version}.tar.bz2
|
||||||
|
Patch0: abuse_sdl-0.7.0-debian.patch
|
||||||
|
Patch1: abuse_sdl-0.7.0-fixes.patch
|
||||||
|
Patch2: abuse_sdl-0.7.0-exit-intro-crash.patch
|
||||||
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
|
BuildRequires: ImageMagick SDL-devel alsa-lib-devel libGLU-devel
|
||||||
|
Requires: abuse-data
|
||||||
|
|
||||||
|
%description
|
||||||
|
This is the SDL version of Abuse, the classic Crack-Dot-Com game. It can run in
|
||||||
|
a window or fullscreen and it has stereo sound with sound panning.
|
||||||
|
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup -q -n abuse_sdl-%{version}
|
||||||
|
%patch0 -p1 -z .deb
|
||||||
|
%patch1 -p1 -z .fix
|
||||||
|
%patch2 -p1 -z .intro
|
||||||
|
|
||||||
|
|
||||||
|
%build
|
||||||
|
%configure
|
||||||
|
make %{?_smp_mflags}
|
||||||
|
|
||||||
|
|
||||||
|
%install
|
||||||
|
rm -rf $RPM_BUILD_ROOT
|
||||||
|
make install DESTDIR=$RPM_BUILD_ROOT
|
||||||
|
mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps
|
||||||
|
mv $RPM_BUILD_ROOT%{_datadir}/games/%{name}/%{name}.png \
|
||||||
|
$RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps
|
||||||
|
rm -fr $RPM_BUILD_ROOT%{_datadir}/games
|
||||||
|
|
||||||
|
|
||||||
|
%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
|
||||||
|
|
||||||
|
%postun
|
||||||
|
touch --no-create %{_datadir}/icons/hicolor || :
|
||||||
|
if [ -x %{_bindir}/gtk-update-icon-cache ]; then
|
||||||
|
%{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
%files
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%doc AUTHORS README TODO COPYING
|
||||||
|
%{_bindir}/%{name}.sdl
|
||||||
|
%{_mandir}/man6/%{name}-sdl.6.gz
|
||||||
|
%{_datadir}/icons/hicolor/32x32/apps/%{name}.png
|
||||||
|
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Mon Aug 28 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 0.7.0-3
|
||||||
|
- FE6 Rebuild
|
||||||
|
|
||||||
|
* Thu Aug 24 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 0.7.0-2
|
||||||
|
- Fix abuse from crashing on exit when you try to close the window while the
|
||||||
|
intro is still playing
|
||||||
|
|
||||||
|
* Wed Aug 16 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 0.7.0-1
|
||||||
|
- Initial FE submission
|
||||||
14313
abuse_sdl-0.7.0-debian.patch
Normal file
14313
abuse_sdl-0.7.0-debian.patch
Normal file
File diff suppressed because it is too large
Load diff
20
abuse_sdl-0.7.0-exit-intro-crash.patch
Normal file
20
abuse_sdl-0.7.0-exit-intro-crash.patch
Normal file
|
|
@ -0,0 +1,20 @@
|
||||||
|
--- abuse_sdl-0.7.0/src/game.cpp.shit 2006-08-24 16:39:45.000000000 +0200
|
||||||
|
+++ abuse_sdl-0.7.0/src/game.cpp 2006-08-24 16:43:22.000000000 +0200
|
||||||
|
@@ -1269,9 +1269,14 @@
|
||||||
|
if( DEFINEDP( logo_snd ) && ( sound_avail & SFX_INITIALIZED ) )
|
||||||
|
cash.sfx( lnumber_value( logo_snd ) )->play( sfx_volume );
|
||||||
|
|
||||||
|
- image blank( 2, 2 );
|
||||||
|
- blank.clear();
|
||||||
|
- eh->set_mouse_shape( blank.copy(), 0, 0 ); // don't show mouse
|
||||||
|
+ /* This must be a dynamic allocated image because if it
|
||||||
|
+ is not and the window gets closed during do_title, then
|
||||||
|
+ exit() will try to delete (through the desctructor of
|
||||||
|
+ image_list in image.cpp) the image on the stack -> boom. */
|
||||||
|
+ image *blank = new image( 2, 2 );
|
||||||
|
+ blank->clear();
|
||||||
|
+ eh->set_mouse_shape( blank->copy(), 0, 0 ); // don't show mouse
|
||||||
|
+ delete blank;
|
||||||
|
fade_in( cash.img( cdc_logo ), 32 );
|
||||||
|
|
||||||
|
milli_wait( 900 );
|
||||||
59
abuse_sdl-0.7.0-fixes.patch
Normal file
59
abuse_sdl-0.7.0-fixes.patch
Normal file
|
|
@ -0,0 +1,59 @@
|
||||||
|
diff -ur abuse_sdl-0.7.0.orig/src/include/stack.hpp abuse_sdl-0.7.0/src/include/stack.hpp
|
||||||
|
--- abuse_sdl-0.7.0.orig/src/include/stack.hpp 2002-12-15 06:00:32.000000000 +0100
|
||||||
|
+++ abuse_sdl-0.7.0/src/include/stack.hpp 2006-08-16 16:54:58.000000000 +0200
|
||||||
|
@@ -13,20 +13,38 @@
|
||||||
|
{
|
||||||
|
public :
|
||||||
|
T **sdata;
|
||||||
|
- long son;
|
||||||
|
-
|
||||||
|
- grow_stack(int max_size) { sdata=(T **)jmalloc(max_size,"pointer stack"); son=0; }
|
||||||
|
+ unsigned int son, _max_size;
|
||||||
|
+ /* <sigh> the max_size parameter is the number of bytes of the pointerstack
|
||||||
|
+ instead of the number of entries which it ofcourse should have been.
|
||||||
|
+ This breaks on 64 bit since the caller assumes 4 bytes per pointer and
|
||||||
|
+ thus on 64 bit allocates not enough memory. Instead of fixing all callers
|
||||||
|
+ we work around this by multiplying maxsize by 2 on 64 bit. */
|
||||||
|
+ grow_stack(unsigned int max_size)
|
||||||
|
+ {
|
||||||
|
+ max_size *= sizeof(void*)/sizeof(int);
|
||||||
|
+ sdata = (T **)jmalloc(max_size, "pointer stack");
|
||||||
|
+ son=0;
|
||||||
|
+ _max_size=max_size;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
void push(T *data)
|
||||||
|
{
|
||||||
|
sdata[son]=data;
|
||||||
|
son++;
|
||||||
|
+ if (son >= (_max_size/sizeof(int)))
|
||||||
|
+ {
|
||||||
|
+ lbreak("stack overflow\n");
|
||||||
|
+ exit(0);
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
|
||||||
|
- T *pop(long total)
|
||||||
|
- { if (total>son) { lbreak("stack underflow\n"); exit(0); }
|
||||||
|
+ T *pop(unsigned int total)
|
||||||
|
+ {
|
||||||
|
+ if (total>son) { lbreak("stack underflow\n"); exit(0); }
|
||||||
|
son-=total;
|
||||||
|
return sdata[son];
|
||||||
|
}
|
||||||
|
+
|
||||||
|
void clean_up()
|
||||||
|
{
|
||||||
|
if (son!=0) fprintf(stderr,"Warning cleaning up stack and not empty\n");
|
||||||
|
diff -ur abuse_sdl-0.7.0.orig/src/light.cpp abuse_sdl-0.7.0/src/light.cpp
|
||||||
|
--- abuse_sdl-0.7.0.orig/src/light.cpp 2006-08-16 16:56:33.000000000 +0200
|
||||||
|
+++ abuse_sdl-0.7.0/src/light.cpp 2006-08-16 16:36:07.000000000 +0200
|
||||||
|
@@ -348,7 +348,7 @@
|
||||||
|
// f->write(green_light,256*64);
|
||||||
|
for (int i=0;i<TTINTS;i++)
|
||||||
|
f->write(tints[i],256);
|
||||||
|
- fp->write(bright_tint,256);
|
||||||
|
+ f->write(bright_tint,256);
|
||||||
|
// f.write(trans_table,256*256);
|
||||||
|
}
|
||||||
|
delete f;
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
abuse's data contains the claudio addon, which turns out to contain a no-commercial use clause, and removing the addon completely break abuse, see: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=648272
|
|
||||||
1
sources
Normal file
1
sources
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
59ea4498886642aa975f04233cc92558 abuse_sdl-0.7.0.tar.bz2
|
||||||
Reference in a new issue