File bubbros.spec of Package bubbros
#
# spec file for package bubbros
#
# Copyright (c) 2018, Martin Hauke <mardnh@gmx.de>
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: bubbros
Version: 1.6.2
Release: 0
Summary: Bubble Bobble clone for up to 10 players
License: MIT
Group: Amusements/Games/Action/Arcade
URL: http://bub-n-bros.sourceforge.net
Source: https://downloads.sourceforge.net/bub-n-bros/%{name}-%{version}.tar.gz
Source1: bubbros-wrapper.sh
Source2: bubbros-bubnbros-client-wrapper.sh
Source3: bubbros-bubnbros-server-wrapper.sh
# Patches taken from arch-linux package
Patch0: bubbros-config-in-home.patch
Patch1: bubbros-use-python2.patch
# PATCH-FIX-UPSTREAM -- https://sourceforge.net/p/bub-n-bros/patches/3/
Patch2: reproducible.patch
BuildRequires: python2-pygame-devel
BuildRequires: python2-devel
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xext)
BuildRequires: pkgconfig(xproto)
BuildRequires: groff-full
BuildRequires: fdupes
BuildRequires: ImageMagick
BuildRequires: pkgconfig
BuildRequires: update-desktop-files
Recommends: python2-pygame
#Recommends: python-gtk
ExclusiveArch: %{ix86} x86_64
%description
A n-multiplayer clone of the famous Bubble Bobble game.
Features:
* 1 to 10 players -- the best fun is with at least 3 players!
* Same gameplay as the famous McSebi's Bub & Bob.
* Over-the-network game and/or up to 3 players on the same computer.
* Completely original crazy bonuses!
* Capture other players in a bubble!
* New levels, including a random level generator!
%prep
%setup -q
%patch -P 0 -p1
%patch -P 1 -p1
%patch -P 2 -p1
sed -i 's|%{_bindir}/env python2|%{_bindir}/python2|g' BubBob.py bubbob/bb.py display/{Client.py,pclient.py,playback.py}
%build
# build extensions and man pages
make all docs
# generate images with different colors from palette
python2 bubbob/images/buildcolors.py
# generate bonuses documentation
cd bubbob/doc && python2 bonus-doc.py
%install
install -Dm0755 BubBob.py %{buildroot}/%{_datadir}/%{name}/BubBob.py
install -d %{buildroot}/%{_datadir}/%{name}
cp -r bubbob common display java http2 metaserver %{buildroot}/%{_datadir}/%{name}
install -d %{buildroot}/%{_libexecdir}/%{name}
mv %{buildroot}/%{_datadir}/%{name}/{display/xshm.so,bubbob/statesaver.so} %{buildroot}/%{_libexecdir}/%{name}
chmod 755 %{buildroot}/%{_datadir}/%{name}/display/Client.py
#
%suse_update_desktop_file -c %{name} %{name} "Bub-n-Bros" %{name} %{name} Game ArcadeGame
install -D -m0644 http2/data/bob.png %{buildroot}/%{_datadir}/pixmaps/%{name}.png
install -d %{buildroot}%{_mandir}/man1
install -m 0644 doc/*.1 %{buildroot}%{_mandir}/man1
#
install -d %{buildroot}%{_bindir}
install -m0755 %{SOURCE1} %{buildroot}/%{_bindir}/bubbros
install -m0755 %{SOURCE2} %{buildroot}/%{_bindir}/bubnbros-client
install -m0755 %{SOURCE3} %{buildroot}/%{_bindir}/bubnbros-server
#
ln -s %{_libexecdir}/%{name}/xshm.so %{buildroot}%{_datadir}/%{name}/display/xshm.so
ln -s %{_libexecdir}/%{name}/statesaver.so %{buildroot}%{_datadir}/%{name}/bubbob/statesaver.so
#
find %{buildroot}/%{_datadir}/%{name} \( -type d -and \( -name build -or -name CVS \) \) -exec rm -r {} \+
find %{buildroot}/%{_datadir}/%{name} \( -type f -and \( -name .cvsignore -or -name Makefile -or -name "*.c" \) \) -delete
rm -rf %{buildroot}/%{_datadir}/%{name}/display/{windows,dpy_windows.py,snd_windows.py,setup.py}
rm -f %{buildroot}/%{_datadir}/%{name}/bubbob/{images/buildcolors.py,doc/bonus-doc.py,setup.py}
#
find %{buildroot}/%{_datadir}/%{name} -name *.pyc | xargs rm
%fdupes -s %{buildroot}%{_datadir}
%if 0%{?suse_version} < 1330
%post
%desktop_database_post
%postun
%desktop_database_postun
%endif
%files
%license LICENSE.txt artistic.txt
%{_bindir}/bubbros
%{_bindir}/bubnbros-client
%{_bindir}/bubnbros-server
%dir %{_libexecdir}/%{name}
%{_libexecdir}/%{name}/statesaver.so
%{_libexecdir}/%{name}/xshm.so
%{_datadir}/%{name}
%{_datadir}/applications/%{name}.desktop
%{_datadir}/pixmaps/%{name}.png
%{_mandir}/man1/*.1%{?ext_man}
%changelog