Blob Blame History Raw
%global desktop_file_utils_version 0.2.90

%global patched_tarball 1

%if %patched_tarball
%global patch_ext .p
%else
%global patch_ext %{nil}
%endif

Summary: High speed arctic racing game
Name: extremetuxracer
Version: 0.6.0
Release: 2%{?dist}
License: GPLv2+
Group: Amusements/Games
URL: http://extremetuxracer.sourceforge.net
# This is really
# http://downloads.sourceforge.net/extremetuxracer/etr-%{version}.tar.xz, but
# with a badly licensed font file removed. Use etr-clean-tarball.sh to
# regenerate from the upstream tarball.
Source0: etr-%{version}%{patch_ext}.tar.xz
Source1: etr-clean-tarball.sh
Source2: etr.appdata.xml
# Don't reference removed files
Patch0: etr-0.6.0-clean-tarball.patch
# Recreated files after the above patch
Patch10: etr-0.6.0-1-autofoo.patch.xz

BuildRequires: libGL-devel
BuildRequires: libGLU-devel
BuildRequires: SDL-devel >= 1.2
BuildRequires: SDL_image-devel >= 1.2
BuildRequires: SDL_mixer-devel >= 1.2
BuildRequires: freetype-devel
BuildRequires: pkgconfig
BuildRequires: desktop-file-utils >= %{desktop_file_utils_version}
BuildRequires: fontpackages-devel
BuildRequires: symlinks

Requires: opengl-games-utils
Requires: extremetuxracer-common = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: extremetuxracer-papercuts-fonts = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: extremetuxracer-papercuts-outline-fonts = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: gnu-free-sans-fonts

%description
Extreme Tux Racer is an open-source downhill racing game starring Tux, the
Linux mascot.

%package common
Summary: Common files for Extreme Tux Racer and its fonts
BuildArch: noarch

%description common
This package consists of files used by other %{name} packages.

%package papercuts-fonts
Summary: PaperCuts 2.0 font
BuildArch: noarch
Requires: extremetuxracer-common = %{?epoch:%{epoch}:}%{version}-%{release}

%description papercuts-fonts
This package contains the PaperCuts 2.0 font which is used by Extreme Tux
Racer.

%_font_pkg -n papercuts pc_20.ttf PaperCuts20.ttf

%package papercuts-outline-fonts
Summary: PaperCuts Outline 2.0 font
BuildArch: noarch
Requires: extremetuxracer-common = %{?epoch:%{epoch}:}%{version}-%{release}

%description papercuts-outline-fonts
This package contains the PaperCuts Outline 2.0 font which is used by Extreme
Tux Racer.

%_font_pkg -n papercuts-outline pc_outline.ttf PaperCuts_outline.ttf

%prep
%setup -q -n etr-%{version}%{?patch_ext}

%patch0 -p1 -b .clean-tarball

%patch10 -p1 -b .autofoo

%build
%configure
make %{?_smp_mflags}

%install
make DESTDIR="%{buildroot}" install

ln -snf opengl-game-wrapper.sh %{buildroot}%{_bindir}/etr-wrapper
desktop-file-edit --set-key=Exec --set-value=etr-wrapper \
    %{buildroot}%{_datadir}/applications/etr.desktop

mkdir -p %{buildroot}%{_fontdir}
pushd %{buildroot}%{_datadir}/etr/fonts
rm -f stdbold.ttf stditalic.ttf std.ttf
for i in *.ttf; do
    mv "$i" %{buildroot}%{_fontdir}/
    ln -s "%{buildroot}%{_fontdir}/$i" "$i"
done
# Trick symlinks into making symlinks relative which are dangling in the
# buildroot
mkdir -p "%{buildroot}%{_fontbasedir}/gnu-free"
for i in FreeSansBold.ttf FreeSansOblique.ttf FreeSans.ttf; do
    touch "%{buildroot}%{_fontbasedir}/gnu-free/$i"
done
ln -s "%{buildroot}%{_fontbasedir}/gnu-free/FreeSansBold.ttf" stdbold.ttf
ln -s "%{buildroot}%{_fontbasedir}/gnu-free/FreeSansOblique.ttf" stditalic.ttf
ln -s "%{buildroot}%{_fontbasedir}/gnu-free/FreeSans.ttf" std.ttf
symlinks -c -s .
rm -rf "%{buildroot}%{_fontbasedir}/gnu-free"
popd
# compat symlinks for 3rd party users
ln -s pc_20.ttf "%{buildroot}%{_fontdir}/PaperCuts20.ttf"
ln -s pc_outline.ttf "%{buildroot}%{_fontdir}/PaperCuts_outline.ttf"
# move docs in correct location
mv -f %{buildroot}%{_docdir}/etr %{buildroot}%{_pkgdocdir}

# install appdata file
install -DT -m0644 %{SOURCE2} %{buildroot}%{_datadir}/appdata/etr.appdata.xml

%clean
rm -rf %{buildroot}

%files
%doc %{_pkgdocdir}/*
%{_bindir}/etr
%{_bindir}/etr-wrapper
%{_datadir}/etr
%{_datadir}/applications/etr.desktop
%{_datadir}/pixmaps/etr.png
%{_datadir}/appdata

%files common
%doc AUTHORS COPYING ChangeLog

%changelog
* Wed Dec 11 2013 Nils Philippsen <nils@redhat.com> - 0.6.0-2
- install appdata file (#1036330)

* Wed Dec 11 2013 Nils Philippsen <nils@redhat.com> - 0.6.0-1
- version 0.6.0
- use patched tarball cleaned from dubiously licensed font
- drop obsolete patches, build requirements and age-old compat cruft
- use %%global instead of %%define

* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild

* Fri Mar 08 2013 Jon Ciesla <limburgher@gmail.com> - 0.4-12
- Drop desktop vendor tag.

* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild

* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild

* Tue Feb 28 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4-9
- Rebuilt for c++ ABI breakage

* Tue Jan 10 2012 Nils Philippsen <nils@redhat.com> - 0.4-8
- rebuild for gcc 4.7

* Wed Nov 09 2011 Nils Philippsen <nils@redhat.com> - 0.4-7
- comment patches
- patch and rebuild for libpng-1.5
- fix use of memset()

* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild

* Mon Nov 15 2010 Nils Philippsen <nils@redhat.com> 0.4-5
- don't call null members (#652913)

* Mon Nov 15 2010 Nils Philippsen <nils@redhat.com> 0.4-4
- rebuild against new toolchain

* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild

* Tue Feb 24 2009 Nils Philippsen <nils@redhat.com> 0.4-2
- package fonts separately to comply with font packaging guidelines (#477383)

* Wed Mar 05 2008 Nils Philippsen <nphilipp@redhat.com> 0.4-1
- Package Review (#436126):
  - remove BR: sed, zlib-devel
  - add BR: pkgconfig
  - use icon name without extension in desktop file

* Wed Mar 05 2008 manuel wolfshant <wolfy@fedoraproject.org>
- add --with-tcl=... to %%configure line

* Wed Mar 05 2008 Nils Philippsen <nphilipp@redhat.com> 0.4-0
- version 0.4
- initial packaging based on ppracer