192 lines
5.4 KiB
RPMSpec
192 lines
5.4 KiB
RPMSpec
%global icon_file 7kaa_icon.png
|
|
%global icon_dest_dir %{_datadir}/icons/hicolor/32x32/apps
|
|
Name: 7kaa
|
|
Version: 2.14.5
|
|
Release: 10%{?dist}
|
|
Summary: Seven Kingdoms: Ancient Adversaries
|
|
|
|
License: GPLv3+ and GPLv2+
|
|
URL: http://7kfans.com/
|
|
Source0: http://sourceforge.net/projects/skfans/files/%{name}-%{version}.tar.xz
|
|
Source1: %{name}.autodlrc
|
|
Patch0: http://sf.net/p/skfans/bugs/4/attachment/%{name}-formatSecurity.patch
|
|
|
|
BuildRequires: SDL2-devel, SDL2_net-devel
|
|
BuildRequires: enet-devel
|
|
BuildRequires: openal-soft-devel, autoconf
|
|
BuildRequires: gettext-devel
|
|
BuildRequires: desktop-file-utils
|
|
BuildRequires: ImageMagick
|
|
Requires: %{name}-data = %{version}-%{release}
|
|
|
|
%description
|
|
Seven Kingdoms is a real-time strategy (RTS) computer game developed
|
|
by Trevor Chan of Enlight Software. The game enables players to
|
|
compete against up to six other kingdoms allowing players to conquer
|
|
opponents by defeating them in war (with troops or machines),
|
|
capturing their buildings with spies, or offering opponents money
|
|
for their kingdom.
|
|
|
|
Seven Kingdoms: Ancient Adversaries is a free patch provided by
|
|
Interactive Magic and added three new cultures, the Egyptians, the
|
|
Mughals and the Zulus, and a new war machine, Unicorn.
|
|
|
|
%package data
|
|
BuildArch: noarch
|
|
Summary: In-Game data Seven Kingdoms: Ancient Adversaries
|
|
|
|
Requires: %{name} = %{version}-%{release}
|
|
Requires: hicolor-icon-theme
|
|
|
|
%description data
|
|
In-Game music data Seven Kingdoms: Ancient Adversaries
|
|
|
|
%package music
|
|
License: Redistributable, no modification permitted
|
|
BuildArch: noarch
|
|
Summary: In-Game music for Seven Kingdoms: Ancient Adversaries
|
|
|
|
Requires: %{name}-data = %{version}-%{release}
|
|
Requires: autodownloader, sudo
|
|
|
|
%description music
|
|
In-Game music for Seven Kingdoms: Ancient Adversaries
|
|
Due to license issue, you need to run 7kaa-data-installer install the music.
|
|
|
|
%prep
|
|
%setup -q
|
|
%patch0 -p0 -b .formatSecurity
|
|
|
|
%build
|
|
%configure
|
|
make %{?_smp_mflags}
|
|
convert data/image/7k_icon.bmp %{icon_file}
|
|
|
|
|
|
%install
|
|
%make_install
|
|
mkdir -p %{buildroot}%{icon_dest_dir}
|
|
install -m 644 %{icon_file} %{buildroot}%{icon_dest_dir}
|
|
|
|
### == desktop file
|
|
cat>%{name}.desktop<<END
|
|
[Desktop Entry]
|
|
Name=%{name}
|
|
GenericName=Seven Kingdoms: Ancient Adversaries
|
|
Comment=A real-time strategy (RTS) computer game
|
|
Exec=/usr/bin/%{name}
|
|
Icon=%{name}_icon
|
|
Terminal=false
|
|
Type=Application
|
|
Categories=Game;StrategyGame
|
|
END
|
|
|
|
desktop-file-install --dir=%{buildroot}%{_datadir}/applications %{name}.desktop
|
|
|
|
### == music autodownload
|
|
%global data_installer %{name}-data-installer
|
|
%global prj_music_dir %{_datadir}/%{name}/music
|
|
mkdir -p %{buildroot}%{prj_music_dir}
|
|
mkdir -p %{buildroot}/usr/share/doc/%{name}-music
|
|
|
|
### === Downloader
|
|
cat >%{data_installer}<<END
|
|
#!/bin/bash
|
|
echo "This program will download necessary data files."
|
|
if [ -r %{prj_music_dir}/win.wav ];then
|
|
echo "music already downloaded" > /dev/stderr
|
|
exit 2
|
|
fi
|
|
if ! /usr/share/autodl/AutoDL.py %{prj_music_dir}/%{name}.autodlrc; then
|
|
echo "Error on music download" > /dev/stderr
|
|
exit 3
|
|
fi
|
|
cd /tmp/%{name}-music
|
|
tar xjvf /tmp/%{name}-music/%{name}-music.tar.bz2
|
|
sudo install -v -m 644 /tmp/%{name}-music/%{name}-music/music/* /usr/share/%{name}/music
|
|
sudo install -v -m 644 /tmp/%{name}-music/%{name}-music/*.txt /usr/share/doc/%{name}-music
|
|
echo "Done"
|
|
END
|
|
|
|
install -m 755 %{data_installer} %{buildroot}%{_bindir}/%{data_installer}
|
|
install -m 644 %{SOURCE1} %{buildroot}%{prj_music_dir}
|
|
|
|
rm -f %{buildroot}%{_docdir}/%{name}/COPYING
|
|
|
|
%post data
|
|
/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
|
|
|
|
%postun data
|
|
if [ $1 -eq 0 ] ; then
|
|
/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
|
|
if [ -x /usr/bin/gtk-update-icon-cache ];then
|
|
/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
|
|
fi
|
|
fi
|
|
|
|
%posttrans data
|
|
if [ -x /usr/bin/gtk-update-icon-cache ];then
|
|
/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
|
|
fi
|
|
|
|
%postun music
|
|
if [ $1 -eq 0 ] ; then
|
|
## When Uninstall
|
|
rm -fr %{prj_music_dir}
|
|
fi
|
|
|
|
%files
|
|
%doc README
|
|
%license COPYING
|
|
%{_bindir}/%{name}
|
|
%{_datadir}/applications/%{name}.desktop
|
|
|
|
%files data
|
|
%dir %{_datadir}/%{name}
|
|
%{_datadir}/%{name}/[^m]*
|
|
%{icon_dest_dir}/%{icon_file}
|
|
|
|
%files music
|
|
%{_bindir}/%{data_installer}
|
|
%dir %{prj_music_dir}
|
|
%{prj_music_dir}/%{name}.autodlrc
|
|
%dir %{_docdir}/%{name}-music
|
|
|
|
%changelog
|
|
* Tue Oct 20 2015 Ding-Yi Chen <dchen@redhat.com> 2.14.5-10
|
|
- music won't get uninstall when upgrading.
|
|
- Remove /usr/share/doc/COPYING as it is already installed.
|
|
|
|
* Fri Jun 26 2015 Ding-Yi Chen <dchen@redhat.com> 2.14.5-8
|
|
- Use name macro whenever possible.
|
|
|
|
* Wed Jun 24 2015 Ding-Yi Chen <dchen@redhat.com> 2.14.5-7
|
|
- Fix the .desktop file.
|
|
|
|
* Tue Jun 23 2015 Ding-Yi Chen <dchen@redhat.com> 2.14.5-6
|
|
- Requires: hicolor-icon-theme
|
|
- License become GPLv3+ and GPLv2+ as "gettext.h" is GPLv3
|
|
|
|
* Wed Jun 17 2015 Ding-Yi Chen <dchen@redhat.com> 2.14.5-5
|
|
- Fix for Review Request Comment #11
|
|
|
|
* Tue Jun 16 2015 Ding-Yi Chen <dchen@redhat.com> 2.14.5-4
|
|
- Fix for Review Request Comment #10
|
|
|
|
* Tue Jun 02 2015 Ding-Yi Chen <dchen@redhat.com> 2.14.5-3
|
|
- Fix for Review Request Comment #8
|
|
|
|
* Mon Jun 01 2015 Ding-Yi Chen <dchen@redhat.com> 2.14.5-2
|
|
- Fix for Review Request Comment #6
|
|
|
|
* Sun May 31 2015 Ding-Yi Chen <dchen@redhat.com> 2.14.5-1
|
|
- Upstream update to 2.14.5
|
|
- BuildRequires: add enet-devel
|
|
- Use autodownloader to download music.
|
|
|
|
* Wed May 27 2015 Ding-Yi Chen <dchen@redhat.com> 2.14.4-2
|
|
- Remove music.
|
|
|
|
* Tue May 05 2015 Ding-Yi Chen <dchen@redhat.com> 2.14.4-1
|
|
- Initial packaging.
|
|
|