slashem/slashem.spec

163 lines
5.1 KiB
RPMSpec

Name: slashem
Version: 0.0.8
Release: 0.3.E0F1%{?dist}
Summary: Super Lotsa Added Stuff Hack - Extended Magic
Group: Amusements/Games
License: NGPL
URL: http://slashem.sourceforge.net/
Source0: http://downloads.sourceforge.net/slashem/se008e0f1.tar.gz
Source1: %{name}.desktop
Patch0: slashem-config.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: ncurses-devel
BuildRequires: bison, flex, desktop-file-utils
BuildRequires: bdftopcf, libX11-devel, libXaw-devel, libXext-devel
BuildRequires: libXmu-devel, libXpm-devel, libXt-devel
BuildRequires: SDL-devel libGL-devel libpng-devel
# to compress save files
Requires: bzip2
# for fonts (BZ #505613 requests that they be split out)
Requires: nethack
%global fa_var /var/games/%{name}
%global fa_save /var/games/%{name}/save
%global fa_share %{_datadir}/games/%{name}
%global fa_unshare %{_libdir}/games/%{name}
%global fa_doc %{_defaultdocdir}/%{name}-%{version}
%description
From the land before 3DFX, before VGA graphics and DOOM, before the IBM PC, way
back in the dark ages of Unixland, there was a game. They called it Rogue.
People played it, and found it good. From this basis, Hack was born. Soon Hack
became Nethack, because it was developed by many people (and has nothing to do
with hacking the internet). And people played this on many machines, from
Unices to Macs to PCs, due to the amazing power of Open Source Code.
But the DevTeam, the reclusive masterminds of Nethack, are a rather quiet
bunch, gracing the world with new versions as they see fit, and when they see
fit. Which is usually a new version every good number of years.
And there was much gnashing of teeth.
But because of the Freely Available Source Code Phenomenon, people began making
their own versions of Nethack to tide themselves between magical releases.
SLASH'EM is the (continuing) saga of one such variant...
%prep
%setup -q -n %{name}-%{version}E0F1
%patch0 -p 1 -b .config
sed -i \
-e 's:^\(#define FILE_AREA_VAR\).*:\1 "%{fa_var}/":' \
-e 's:^\(#define FILE_AREA_SAVE\).*:\1 "%{fa_save}/":' \
-e 's:^\(#define FILE_AREA_SHARE\).*:\1 "%{fa_share}/":' \
-e 's:^\(#define FILE_AREA_UNSHARE\).*:\1 "%{fa_unshare}/":' \
-e 's:^\(#define FILE_AREA_DOC\).*:\1 "%{fa_doc}/":' \
include/unixconf.h
for f in *.txt ; do
iconv -f iso8859-1 -t utf-8 $f >$f.conv
touch -r $f $f.conv
mv $f.conv $f
done
%build
export LIBXAW_CFLAGS="-I/usr/include"
export LIBXAW_LIBS="$(pkg-config --libs xaw7)"
%configure \
--enable-tty-graphics \
--enable-x11-graphics \
--enable-sdl-graphics \
--enable-gl-graphics \
--enable-data-librarian \
--enable-sinks \
--enable-reincarnation \
--enable-zouthern \
--enable-score-on-botl \
--enable-wizmode=games
# smp_mflags fails
make \
FILE_AREA_VAR=%{fa_var} \
FILE_AREA_SAVE=%{fa_save} \
FILE_AREA_SHARE=%{fa_share} \
FILE_AREA_UNSHARE=%{fa_unshare} \
FILE_AREA_DOC=%{fa_doc} \
SHELLDIR=%{_bindir}
%install
rm -rf %{buildroot}
make install DESTDIR=%{buildroot} \
FILE_AREA_VAR=%{buildroot}%{fa_var} \
FILE_AREA_SAVE=%{buildroot}%{fa_save} \
FILE_AREA_SHARE=%{buildroot}%{fa_share} \
FILE_AREA_UNSHARE=%{buildroot}%{fa_unshare} \
FILE_AREA_DOC=%{buildroot}%{fa_doc} \
SHELLDIR=%{buildroot}%{_bindir} \
CHOWN=/bin/true \
CHGRP=/bin/true
install -d -m 0755 %{buildroot}%{_mandir}/man6
make -C doc MANDIR=%{buildroot}%{_mandir}/man6 manpages
sed -i \
-e 's!%{buildroot}!!g' \
-e '/XUSERFILE/s!\$HACKDIR!%{fa_share}!' \
%{buildroot}%{_bindir}/slashem
mv %{buildroot}%{fa_unshare}/recover %{buildroot}%{_bindir}/slashem-recover
mv %{buildroot}%{_mandir}/man6/recover.6 %{buildroot}%{_mandir}/man6/slashem-recover.6
rm %{buildroot}%{_mandir}/man6/[^s]*
sed -i -e 's:^!\(SlashEM.tile_file.*\):\1:' %{buildroot}%{fa_share}/SlashEM.ad
install -D -p -m 0644 win/X11/nh_icon.xpm %{buildroot}%{_datadir}/pixmaps/slashem.xpm
desktop-file-install \
--dir %{buildroot}%{_datadir}/applications \
--add-category X-Fedora \
--add-category Application \
--add-category Game \
%{SOURCE1}
%clean
rm -rf %{buildroot}
%files
%defattr(-,root,root,-)
%doc history.txt doc/*.txt README.34 readme.* slamfaq.txt dat/license dat/history
%{_bindir}/slashem
%{_bindir}/slashem-recover
%{fa_share}
%dir %{fa_unshare}
%{fa_unshare}/nhushare
%{_mandir}/man6/*
%{_datadir}/applications/slashem.desktop
%{_datadir}/pixmaps/slashem.xpm
%defattr(0664,root,games)
%config(noreplace) %{fa_var}/logfile
%config(noreplace) %{fa_var}/perm
%config(noreplace) %{fa_var}/record
%attr(0775,root,games) %dir %{fa_var}
%attr(0775,root,games) %dir %{fa_var}/save
%attr(2755,root,games) %{fa_unshare}/slashem
%changelog
* Mon Jul 06 2009 Iain Arnell <iarnell@gmail.com> 0.0.8-0.3.E0F1
- don't install fonts - require nethack instead
* Wed Jun 10 2009 Iain Arnell <iarnell@gmail.com> 0.0.8-0.2.E0F1
- additional requires for scriptlets
- only run preun for final uninstall
* Thu May 21 2009 Iain Arnell <iarnell@gmail.com> 0.0.8-0.1.E0F1
- initial packaging