Blob Blame History Raw
Name:           clonekeen
Version:        0.8.3
Release:        3%{?dist}
Summary:        "Commander Keen: Invasion of the Vorticons" clone
Group:          Amusements/Games
License:        GPLv2+
URL:            http://clonekeen.sourceforge.net/
Source0:        http://downloads.sourceforge.net/%{name}/CKBeta83_Src.zip
# This are the .dat files and the extra (GPL) levels from 
# http://downloads.sourceforge.net/%{name}/CKBeta83_Bin_W32.zip
# ep1attr.dat and ep3attr.dat are replaced with improved versions from
# http://jonathannielsen.com/mw/CloneKeen2X-1.0-src.zip
# The pristine upstream .zip's aren't used because the included sounds.ck?
# files are property of id Software
Source1:        %{name}-%{version}-data.tar.gz
Source2:        extract.c
Source3:        clonekeen-extract-sounds.c
Source4:        %{name}.sh
Source5:        %{name}.autodlrc
Source6:        %{name}.desktop
Source7:        %{name}.png
Patch0:         %{name}-fixes.patch
Patch1:         %{name}-clonekeen2x-fixes.patch
Patch2:         %{name}-options.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires:  SDL_mixer-devel dynamite-devel desktop-file-utils
Requires:       hicolor-icon-theme autodownloader

%description
CloneKeen is an almost complete clone of the old classic DOS game,
"Commander Keen: Invasion of the Vorticons" by by id Software:
http://www.idsoftware.com/
CloneKeen requires the original id Software gamedata files to work.

If you posess the original DOS games. You can play all three episodes of the
game. If you don't, you can can still play the shareware episode one. Which can
be freely downloaded from Apogee, but cannot be distributed as a part of
Fedora. When you start CloneKeen for the first time it will offer to download
the shareware datafiles for you.


%prep
%setup -q -a 1 -n keen
%patch0 -p1
%patch1 -p0
%patch2 -p1
cp -a %{SOURCE2} %{SOURCE3} .
rm src/scale2x/*.o
sed -i 's/\r//g' readme.txt src/changelog.txt


%build
make %{?_smp_mflags} -C src -f Makefile.lnx CFLAGS="$RPM_OPT_FLAGS"
gcc -o %{name}-extract $RPM_OPT_FLAGS extract.c -ldynamite
gcc -o %{name}-extract-sounds $RPM_OPT_FLAGS %{name}-extract-sounds.c


%install
rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT%{_bindir}
mkdir -p $RPM_BUILD_ROOT%{_libexecdir}
mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name}/data

install -m 755 src/keen $RPM_BUILD_ROOT%{_libexecdir}/%{name}
install -m 755 %{name}-extract $RPM_BUILD_ROOT%{_libexecdir}
install -m 755 %{name}-extract-sounds $RPM_BUILD_ROOT%{_libexecdir}
install -p -m 755 %{SOURCE4} $RPM_BUILD_ROOT%{_bindir}/%{name}
install -p -m 644 %{SOURCE5} $RPM_BUILD_ROOT%{_datadir}/%{name}
install -p -m 644 bin/*.dat  $RPM_BUILD_ROOT%{_datadir}/%{name}
install -p -m 644 bin/data/* $RPM_BUILD_ROOT%{_datadir}/%{name}/data

# 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 \
  %{SOURCE6}

mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/24x24/apps
install -p -m 644 %{SOURCE7} \
  $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/24x24/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 readme.txt src/changelog.txt
%{_bindir}/%{name}
%{_libexecdir}/%{name}*
%{_datadir}/%{name}
%{_datadir}/applications/fedora-%{name}.desktop
%{_datadir}/icons/hicolor/24x24/apps/%{name}.png


%changelog
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 0.8.3-3
- Autorebuild for GCC 4.3

* Tue Nov  6 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 0.8.3-2
- Give proper attribution to id Software

* Thu Oct 25 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 0.8.3-1
- Initial Fedora package