Name: CriticalMass
Version: 1.0.2
Release: 6%{?dist}
Summary: SDL/OpenGL space shoot'em up game also known as critter
Group: Amusements/Games
License: GPLv2+
URL: http://criticalmass.sourceforge.net/critter.php
Source0: http://downloads.sourceforge.net/criticalmass/%{name}-%{version}.tar.bz2
Source1: %{name}.desktop
Patch0: CriticalMass-1.0.2-sys-curl.patch
Patch1: CriticalMass-1.0.2-sys-tinyxml.patch
Patch2: CriticalMass-1.0.2-gcc43.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: SDL_image-devel SDL_mixer-devel libpng-devel curl-devel
BuildRequires: tinyxml-devel desktop-file-utils
Requires: hicolor-icon-theme opengl-games-utils
# Also known as critter, so make "yum install critter" work
Provides: critter = %{version}-%{release}
%description
Critical Mass (aka Critter) is an SDL/OpenGL space shoot'em up game. Your
world has been infested by an aggressive army of space critters. Overrun and
unprepared, your government was unable to defend its precious resources. As
a last effort to recapture some of the "goodies", you have been placed into
a tiny spacecraft and sent after them.
%prep
%setup -q
%patch0 -p1
%patch1 -p1
%patch2 -p1
%build
%configure
# <sigh> ./configure doesn't properly pick up our CFLAGS
CFLAGS="$RPM_OPT_FLAGS -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL"
make %{?_smp_mflags} CFLAGS="$CFLAGS" CXXFLAGS="$CFLAGS -fno-exceptions"
%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
ln -s opengl-game-wrapper.sh $RPM_BUILD_ROOT%{_bindir}/critter-wrapper
# remove unwanted utility
rm $RPM_BUILD_ROOT%{_bindir}/Packer
# below is the desktop file and icon stuff.
mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications
desktop-file-install --vendor fedora \
--dir $RPM_BUILD_ROOT%{_datadir}/applications \
%{SOURCE1}
mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps
install -p -m 644 critter.png \
$RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/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
%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 COPYING Readme.html TODO
%{_bindir}/critter*
%{_datadir}/Critical_Mass
%{_mandir}/man6/critter.6*
%{_datadir}/applications/fedora-%{name}.desktop
%{_datadir}/icons/hicolor/48x48/apps/critter.png
%changelog
* Mon Feb 23 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.2-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Thu Apr 3 2008 Hans de Goede <j.w.r.degoede@hhs.nl> 1.0.2-5
- Force proper use of RPM_OPT_FLAGS during build
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 1.0.2-4
- Autorebuild for GCC 4.3
* Fri Jan 4 2008 Hans de Goede <j.w.r.degoede@hhs.nl> 1.0.2-3
- Fix build with gcc 4.3
* Sat Dec 1 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 1.0.2-2
- Use system version of tinyxml
- Some other small specfile cleanups
- Use opengl-games-utils wrapper to show error dialog when DRI is missing
* Thu Nov 29 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 1.0.2-1
- Initial Fedora Package