Blob Blame History Raw
# Copyright (c) 2007 oc2pus <toni@links2linux.de>
# Copyright (c) 2007-2010 Hans de Goede <hdegoede@redhat.com>
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments to us at the above email addresses

Name:           freecol
Version:        0.9.5
Release:        1%{?dist}
Summary:        Turn-based multi-player strategy game
Group:          Amusements/Games
License:        GPL+
URL:            http://www.freecol.org/
# This is http://downloads.sourceforge.net/%{name}/%{name}-%{version}-src.tar.gz
# With the following removed
# - The unclearly licensed Plakat-Fraktur.ttf font
# - Prebuild jars of various used java bits (although all FOSS licensed, Fedora
#   may ship a different version, so we need to remove these as we may not be
#   shipping the correct sources to satisfy the GPL).
Source0:        %{name}-%{version}-src-clean.tar.gz
Source1:        %{name}.sh
Source2:        %{name}.desktop
Patch0:         freecol-no-classpath-in-MF.patch
# Patch taken from Debian, so that freecol will work with the stock cortado
Patch1:         freecol-disable-listener.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires:  ant ant-nodeps xml-commons-apis xml-commons-resolver tetex-tex4ht
BuildRequires:  ImageMagick desktop-file-utils fontpackages-devel
BuildRequires:  jakarta-commons-cli cortado jorbis miglayout
# Doesn't run with gcj, so better build it with icedtea/openjdk too
BuildRequires:  java-1.6.0-openjdk-devel
BuildArch:      noarch
Requires:       java-1.6.0-openjdk jpackage-utils hicolor-icon-theme
Requires:       jakarta-commons-cli cortado jorbis miglayout
Requires:       %{name}-shadowedblack-fonts %{name}-imperator-fonts

%description
FreeCol is a turn-based, multi-player, X based strategy game. FreeCol
has compatible rules with the Colonization game.


%package manual
Summary:        User Documentation for freecol
Group:          Documentation
Requires:       %{name} = %{version}-%{release}

%description manual
User Documentation for freecol.


%package shadowedblack-fonts
Summary:        Gothic font with drop shadows
Group:          User Interface/X
License:        GPLv2+
Requires:       fontpackages-filesystem

%description shadowedblack-fonts
A gothic font with drop shadows originally created by Paul Lloyd in 2002,
extended by the freecol project to include most accented latin characters.


%package imperator-fonts
Summary:        Gothic font
Group:          User Interface/X
License:        GPLv2+
Requires:       fontpackages-filesystem

%description imperator-fonts
A gothic font originally created by Paul Lloyd in 2002, extended by the freecol
project to include most accented latin characters.


%prep
%setup -q -n %{name}
%patch0 -p1
%patch1 -p1
sed -i 's/Plakat-Fraktur/ShadowedBlack/g' \
  src/net/sf/freecol/client/gui/i18n/FreeColMessages_*.properties \
  data/strings/FreeColMessages_*.properties

# freecol normally builds against copies shipped with the source, which we've
# removed. Symlink to the system versions of these.
ln -s %{_javadir}/commons-cli.jar jars/commons-cli-1.1.jar
ln -s %{_javadir}/cortado.jar jars/cortado-fc-1.0.jar
ln -s %{_javadir}/jogg.jar jars/jogg-0.0.7.jar
ln -s %{_javadir}/jorbis.jar jars/jorbis-0.0.15.jar
ln -s %{_javadir}/miglayout.jar jars/miglayout-3.7-swing.jar

# until vorbisspi gets packaged we cannot play back ogg files, convert to wav
for i in data/audio/*/*.ogg; do
    wavname=$(echo "$i"|sed 's/.ogg/.wav/')
    oggdec "$i" -o "$wavname"
    rm "$i"
done


%build
ant clean package manual


%install
rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT%{_bindir}
mkdir -p $RPM_BUILD_ROOT%{_javadir}
mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name}
mkdir -p $RPM_BUILD_ROOT%{_mandir}/man6
mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications
mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps
mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps
mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps
mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/64x64/apps

install -p -m 644 FreeCol.jar $RPM_BUILD_ROOT%{_javadir}/%{name}.jar
install -p -m 644 packaging/debian/%{name}.6 $RPM_BUILD_ROOT%{_mandir}/man6
install -p -m 755 %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}/%{name}

cp -a data $RPM_BUILD_ROOT%{_datadir}/%{name}

mkdir -p $RPM_BUILD_ROOT%{_fontdir}
mv $RPM_BUILD_ROOT%{_datadir}/%{name}/data/fonts/ShadowedBlack.ttf \
  $RPM_BUILD_ROOT%{_fontdir}
mv $RPM_BUILD_ROOT%{_datadir}/%{name}/data/fonts/Imperator.ttf \
  $RPM_BUILD_ROOT%{_fontdir}
ln -s ../../../fonts/freecol/ShadowedBlack.ttf \
  $RPM_BUILD_ROOT%{_datadir}/%{name}/data/fonts/ShadowedBlack.ttf
ln -s ../../../fonts/freecol/Imperator.ttf \
  $RPM_BUILD_ROOT%{_datadir}/%{name}/data/fonts/Imperator.ttf

convert packaging/icons/freecol.ico %{name}.png
install -m 644 %{name}-0.png \
  $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps/%{name}.png
install -m 644 %{name}-1.png \
  $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps/%{name}.png
install -m 644 %{name}-2.png \
  $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps/%{name}.png
install -m 644 %{name}-3.png \
  $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/64x64/apps/%{name}.png

desktop-file-install --vendor fedora            \
  --dir $RPM_BUILD_ROOT%{_datadir}/applications \
  %{SOURCE2}


%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 COPYING
%{_bindir}/%{name}
%{_datadir}/%{name}
%{_javadir}/%{name}.jar
%{_mandir}/man6/%{name}.6.gz
%{_datadir}/applications/fedora-%{name}.desktop
%{_datadir}/icons/hicolor/*/apps/%{name}.png

%files manual
%defattr(-,root,root,-)
%doc doc/FreeCol.pdf doc/FreeCol.html doc/FreeCol.css doc/images

%_font_pkg -n shadowedblack ShadowedBlack.ttf
%doc COPYING data/fonts/README
%dir %{_fontdir}

%_font_pkg -n imperator Imperator.ttf
%doc COPYING data/fonts/README
%dir %{_fontdir}

%changelog
* Wed Nov 17 2010 Hans de Goede <hdegoede@redhat.com> 0.9.5-1
- New upstream release 0.9.5 (#579520)

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

* Tue May 12 2009 Hans de Goede <hdegoede@redhat.com> 0.8.3-1
- New upstream release 0.8.3

* Mon May  4 2009 Hans de Goede <hdegoede@redhat.com> 0.8.2-1
- New upstream release 0.8.2

* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild

* Sun Feb 22 2009 Hans de Goede <hdegoede@redhat.com> 0.8.1-1
- New upstream release 0.8.1

* Thu Jan 15 2009 Hans de Goede <hdegoede@redhat.com> 0.8.0-2
- Update description for new trademark guidelines

* Thu Jan 15 2009 Hans de Goede <hdegoede@redhat.com> 0.8.0-1
- New upstream release 0.8.0

* Sat Dec 27 2008 Hans de Goede <j.w.r.degoede@hhs.nl> 0.7.4-4
- Drop unclearly licensed Plakat-Fraktur font (and stop using it)
- Put ShadowedBlack font in its own shadowedblack-fonts subpackage (rh 477388)

* Mon Nov 24 2008 Hans de Goede <j.w.r.degoede@hhs.nl> 0.7.4-3
- Fixup Summary

* Thu Sep 11 2008 Tom "spot" Callaway <tcallawa@redhat.com> 0.7.4-2
- use tetex-tex4ht instead of latex2html

* Mon Jun 16 2008 Hans de Goede <j.w.r.degoede@hhs.nl> 0.7.4-1
- New upstream release 0.7.4

* Fri Mar 14 2008 Hans de Goede <j.w.r.degoede@hhs.nl> 0.7.3-2
- Adapt launch script and (Build)Requires for icedtea -> openjdk rename

* Sat Feb  9 2008 Hans de Goede <j.w.r.degoede@hhs.nl> 0.7.3-1
- New upstream release 0.7.3
- Drop ExcludeArch ppc ppc64 now that icedtea is available for ppc too

* Wed Oct  3 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 0.7.2-3
- Remove wstx classpath lookup from the startup script, as we no longer
  require wstx
- .desktop file cleanups

* Tue Oct  2 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 0.7.2-2
- Add BuildRequires: xorg-x11-server-utils, to fix generating of images in
  the manual package, see bz 313301
- Drop requires on wstx, it isn't strictly needed, but does speed up things
  significantly, so the Requires will return when wstx hits the repo
- Really remove classpath entry from the manifest

* Sun Sep 23 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 0.7.2-1
- Adapted Packman spec file for Fedora

* Thu Sep 20 2007 Toni Graffy <toni@links2linux.de> - 0.7.2-0.pm.1
- update to 0.7.2

* Fri Aug 31 2007 Toni Graffy <toni@links2linux.de> - 0.7.1-0.pm.2
- build openSUSE-10.3, corrected BuildRequires

* Mon Aug 13 2007 Toni Graffy <toni@links2linux.de> - 0.7.1-0.pm.1
- update to 0.7.1

* Fri Jul 13 2007 Toni Graffy <toni@links2linux.de> - 0.7.0-0.pm.1
- update to 0.7.0

* Sun May 06 2007 Toni Graffy <toni@links2linux.de> - 0.6.1-0.pm.1
- First packaged release 0.6.1