Compare commits

..

3 commits

Author SHA1 Message Date
Fedora Release Engineering
f1b737da3c dist-git conversion 2010-07-28 09:33:39 +00:00
Bill Nottingham
7649ef8318 Fix typo that causes a failure to update the common directory. (releng
#2781)
2009-11-26 01:24:34 +00:00
Jesse Keating
5e3fce4ba4 Initialize branch F-8 for abuse 2007-10-20 03:49:54 +00:00
7 changed files with 14477 additions and 1 deletions

1
.gitignore vendored Normal file
View file

@ -0,0 +1 @@
abuse_sdl-0.7.0.tar.bz2

83
abuse.spec Normal file
View file

@ -0,0 +1,83 @@
Name: abuse
Version: 0.7.0
Release: 5%{?dist}
Summary: The classic Crack-Dot-Com game
Group: Amusements/Games
License: GPL+
URL: http://happypenguin.org/show?Abuse-SDL
# no URL upstream's site is gone
Source0: 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: SDL-devel alsa-lib-devel libGLU-devel
Requires: abuse-data hicolor-icon-theme
%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
* Thu Aug 2 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 0.7.0-5
- Update License tag for new Licensing Guidelines compliance
* Sun May 20 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 0.7.0-4
- Fix broken URL field (bz 240592)
* 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

File diff suppressed because it is too large Load diff

View 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 );

View 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;

View file

@ -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
View file

@ -0,0 +1 @@
59ea4498886642aa975f04233cc92558 abuse_sdl-0.7.0.tar.bz2