]> git.pld-linux.org Git - packages/fuse.git/blobdiff - fuse.spec
Release 5 (by relup.sh)
[packages/fuse.git] / fuse.spec
index 3bc5689ba1bc37afd224ca5cee95047c1a025537..4727d62cd2cbd9e68861af8e5c16e26935c21cce 100644 (file)
--- a/fuse.spec
+++ b/fuse.spec
@@ -1,24 +1,48 @@
+#
+# Conditional build:
+%bcond_with    svga    # svgalib version
+%bcond_without fb      # framebuffer version
+%bcond_without gtk2    # GTK+ 2 version
+%bcond_without gtk3    # GTK+ 3 version
+%bcond_without sdl     # SDL version
+%bcond_without libao   # libao instead of alsa
+#
+%define                libspectrum_ver 1.5.0
 Summary:       Free Unix Spectrum Emulator
-Summary(pl):   "Wolny" uniksowy emulator ZX Spectrum
+Summary(pl.UTF-8):     Darmowy uniksowy emulator ZX Spectrum
 Name:          fuse
-Version:       0.5.1
-Release:       2
-License:       GPL
+Version:       1.6.0
+Release:       5
+License:       GPL v2+
 Group:         Applications/Emulators
-Source0:       http://www.srcf.ucam.org/~pak21/spectrum/%{name}-%{version}.tar.gz
-Patch0:                %{name}-typo.patch
-Patch1:     %{name}-tmx.patch
-URL:           http://www.srcf.ucam.org/~pak21/spectrum/fuse.html
-BuildRequires: autoconf
-BuildRequires: automake
-BuildRequires:  gtk+-devel
-BuildRequires: libspectrum-devel
-BuildRequires: perl
-BuildRequires:  libxml2-devel
-%ifarch %{ix86} alpha ppc
-BuildRequires: svgalib-devel
-%endif
-BuildRequires: XFree86-devel
+Source0:       http://downloads.sourceforge.net/fuse-emulator/%{name}-%{version}.tar.gz
+# Source0-md5: 393ae137e76de66e6a1bf66959a39e99
+Source1:       ti_m397.rom
+# Source1-md5: 8c61b20e1f7666ff80ad7f48bb2b10c0
+Patch0:                http://downloads.sourceforge.net/fdd3000e/v_0.2.1/fuse-1.6.0-fdd3000-0.2.1.diff
+# Patch0-md5:  4a75f5c445921feb2c12a8406f71c44e
+URL:           http://fuse-emulator.sourceforge.net/
+BuildRequires: SDL-devel >= 1.2.4
+%{!?with_libao:BuildRequires:  alsa-lib-devel}
+BuildRequires: autoconf >= 2.59-9
+BuildRequires: automake >= 1:1.11
+BuildRequires: glib2-devel >= 1:2.20.0
+%{?with_fb:BuildRequires:      gpm-devel}
+%{?with_gtk2:BuildRequires:    gtk+2-devel >= 2:2.18.0}
+%{?with_gtk3:BuildRequires:    gtk+3-devel >= 3.0}
+%{?with_libao:BuildRequires:   libao-devel}
+BuildRequires: libjsw-devel
+BuildRequires: libpng-devel
+BuildRequires: libspectrum-devel >= %{libspectrum_ver}
+BuildRequires: libtool >= 2:2
+BuildRequires: libxml2-devel >= 1:2.6.0
+BuildRequires: perl-base
+BuildRequires: pkgconfig
+BuildRequires: rpmbuild(macros) >= 1.697
+BuildRequires: sed >= 4.0
+%{?with_svga:BuildRequires:    svgalib-devel}
+BuildRequires: xorg-lib-libX11-devel
+BuildRequires: zlib-devel
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
@@ -31,19 +55,26 @@ What Fuse does have:
   stuff).
 * Support for loading from .tzx files.
 * Sound emulation.
+* Emulation of several printers for ZX Spectrum.
 
-%description -l pl
+%description -l pl.UTF-8
 fuse (Free Unix Spectrum Emulator) jest emulatorem ZX Spectrum.
-Jego w³a¶ciwo¶ci to:
+Jego właściwości to:
 
 * Emulacja ZX Spectrum 48K/128K/+2/+2A.
-* Mo¿liwo¶æ ³adowania programów z plików .tzx.
-* D¼wiêk.
+* Możliwość ładowania programów z plików .tzx.
+* Dźwięk.
+* Emulacja kilku drukarek przeznaczonych dla ZX Spectrum.
 
 %package common
 Summary:       Free Unix Spectrum Emulator (common files)
-Summary(pl):   "Wolny" uniksowy emulator ZX Spectrum (pliki wspólne)
+Summary(pl.UTF-8):     Darmowy uniksowy emulator ZX Spectrum (pliki wspólne)
 Group:         Applications/Emulators
+# actually -common doesn't require these libraries, but all the frontends do
+Requires:      glib2 >= 1:2.20.0
+Requires:      libspectrum >= %{libspectrum_ver}
+Requires:      libxml2-devel >= 1:2.6.0
+Suggests:      fdd3000e
 
 %description common
 fuse is Free Unix Spectrum Emulator.
@@ -54,26 +85,27 @@ What Fuse does have:
   speed on a SparcStation 4 unless you do too much graphics intensive
   stuff).
 * Support for loading from .tzx files.
-* Sound.
+* Sound emulation.
+* Emulation of several printers for ZX Spectrum.
 
-This package contains common files for X11 and svga version.
+This package contains common files for all versions.
 
-%description common -l pl
+%description common -l pl.UTF-8
 fuse (Free Unix Spectrum Emulator) jest emulatorem ZX Spectrum.
-Jego w³a¶ciwo¶ci to:
+Jego właściwości to:
 
 * Emulacja ZX Spectrum 48K/128K/+2/+2A.
-* Mo¿liwo¶æ ³adowania programów z plików .tzx.
-* D¼wiêk.
+* Możliwość ładowania programów z plików .tzx.
+* Dźwięk.
 * Emulacja kilku drukarek przeznaczonych dla ZX Spectrum.
 
-W tym pakiecie znajduj± siê wspólne pliki dla wersji X11 i svga.
+W tym pakiecie znajdują się wspólne pliki dla wszystkich wersji.
 
 %package fb
 Summary:       Free Unix Spectrum Emulator (framebuffer version)
-Summary(pl):   "Wolny" uniksowy emulator ZX Spectrum (wersja na framebuffer)
+Summary(pl.UTF-8):     Darmowy uniksowy emulator ZX Spectrum (wersja na framebuffer)
 Group:         Applications/Emulators
-Requires:      %{name}-common = %{version}
+Requires:      %{name}-common = %{version}-%{release}
 
 %description fb
 fuse is Free Unix Spectrum Emulator.
@@ -84,25 +116,60 @@ What Fuse does have:
   speed on a SparcStation 4 unless you do too much graphics intensive
   stuff).
 * Support for loading from .tzx files.
-* Sound.
+* Sound emulation.
+* Emulation of several printers for ZX Spectrum.
 
 This package contains files for framebuffer version.
 
-%description fb -l pl
+%description fb -l pl.UTF-8
 fuse (Free Unix Spectrum Emulator) jest emulatorem ZX Spectrum.
-Jego w³a¶ciwo¶ci to:
+Jego właściwości to:
 
 * Emulacja ZX Spectrum 48K/128K/+2/+2A.
-* Mo¿liwo¶æ ³adowania programów z plików .tzx.
-* D¼wiêk.
+* Możliwość ładowania programów z plików .tzx.
+* Dźwięk.
+* Emulacja kilku drukarek przeznaczonych dla ZX Spectrum.
+
+W tym pakiecie znajdują się pliki dla wersji korzystającej z
+framebuffera.
 
-W tym pakiecie znajduj± siê pliki dla wersji korzystaj±cej z framebuffera. 
+%package sdl
+Summary:       Free Unix Spectrum Emulator (SDL version)
+Summary(pl.UTF-8):     Darmowy uniksowy emulator ZX Spectrum (wersja na SDL)
+Group:         Applications/Emulators
+Requires:      %{name}-common = %{version}-%{release}
+Requires:      SDL >= 1.2.4
+
+%description sdl
+fuse is Free Unix Spectrum Emulator.
+What Fuse does have:
+
+* Working 48K/128K/+2/+2A Speccy emulation, running at true Speccy
+  speed on any computer you're likely to try it on (it runs at full
+  speed on a SparcStation 4 unless you do too much graphics intensive
+  stuff).
+* Support for loading from .tzx files.
+* Sound emulation.
+* Emulation of several printers for ZX Spectrum.
+
+This package contains files for SDL version.
+
+%description sdl -l pl.UTF-8
+fuse (Free Unix Spectrum Emulator) jest emulatorem ZX Spectrum.
+Jego właściwości to:
+
+* Emulacja ZX Spectrum 48K/128K/+2/+2A.
+* Możliwość ładowania programów z plików .tzx.
+* Dźwięk.
+* Emulacja kilku drukarek przeznaczonych dla ZX Spectrum.
+
+W tym pakiecie znajdują się pliki dla wersji korzystającej z SDL.
 
 %package svga
 Summary:       Free Unix Spectrum Emulator (svga version)
-Summary(pl):   "Wolny" uniksowy emulator ZX Spectrum (wersja na svgalib)
+Summary(pl.UTF-8):     Darmowy uniksowy emulator ZX Spectrum (wersja na svgalib)
 Group:         Applications/Emulators
-Requires:      %{name}-common = %{version}
+Requires:      %{name}-common = %{version}-%{release}
 
 %description svga
 fuse is Free Unix Spectrum Emulator.
@@ -113,27 +180,63 @@ What Fuse does have:
   speed on a SparcStation 4 unless you do too much graphics intensive
   stuff).
 * Support for loading from .tzx files.
-* Sound.
+* Sound emulation.
+* Emulation of several printers for ZX Spectrum.
 
 This package contains files for svga version.
 
-%description svga -l pl
+%description svga -l pl.UTF-8
+fuse (Free Unix Spectrum Emulator) jest emulatorem ZX Spectrum.
+Jego właściwości to:
+
+* Emulacja ZX Spectrum 48K/128K/+2/+2A.
+* Możliwość ładowania programów z plików .tzx.
+* Dźwięk.
+* Emulacja kilku drukarek przeznaczonych dla ZX Spectrum.
+
+W tym pakiecie znajdują się pliki dla wersji korzystającej z svgalib.
+
+%package gtk
+Summary:       Free Unix Spectrum Emulator (GTK+ 2 version)
+Summary(pl.UTF-8):     Darmowy uniksowy emulator ZX Spectrum (wersja GTK+ 2)
+Group:         Applications/Emulators
+Requires:      %{name}-common = %{version}-%{release}
+Requires:      gtk+2 >= 2:2.18.0
+Obsoletes:     fuse-X11
+
+%description gtk
+fuse is Free Unix Spectrum Emulator.
+What Fuse does have:
+
+* Working 48K/128K/+2/+2A Speccy emulation, running at true Speccy
+  speed on any computer you're likely to try it on (it runs at full
+  speed on a SparcStation 4 unless you do too much graphics intensive
+  stuff).
+* Support for loading from .tzx files.
+* Sound emulation.
+* Emulation of several printers for ZX Spectrum.
+
+This package contains files for GTK+ 2 version.
+
+%description gtk -l pl.UTF-8
 fuse (Free Unix Spectrum Emulator) jest emulatorem ZX Spectrum.
-Jego w³a¶ciwo¶ci to:
+Jego właściwości to:
 
 * Emulacja ZX Spectrum 48K/128K/+2/+2A.
-* Mo¿liwo¶æ ³adowania programów z plików .tzx.
-* D¼wiêk.
+* Możliwość ładowania programów z plików .tzx.
+* Dźwięk.
+* Emulacja kilku drukarek przeznaczonych dla ZX Spectrum.
 
-W tym pakiecie znajduj± siê pliki dla wersji korzystaj±cej z svgalib. 
+W tym pakiecie znajdują się pliki dla wersji GTK+ 2.
 
-%package X11
-Summary:       Free Unix Spectrum Emulator (X11 version)
-Summary(pl):   "Wolny" uniksowy emulator ZX Spectrum (wersja na XWindow)
+%package gtk3
+Summary:       Free Unix Spectrum Emulator (GTK+ 3 version)
+Summary(pl.UTF-8):     Darmowy uniksowy emulator ZX Spectrum (wersja GTK+ 3)
 Group:         Applications/Emulators
-Requires:      %{name}-common = %{version}
+Requires:      %{name}-common = %{version}-%{release}
+Obsoletes:     fuse-X11
 
-%description X11
+%description gtk3
 fuse is Free Unix Spectrum Emulator.
 What Fuse does have:
 
@@ -142,91 +245,192 @@ What Fuse does have:
   speed on a SparcStation 4 unless you do too much graphics intensive
   stuff).
 * Support for loading from .tzx files.
-* Sound.
+* Sound emulation.
+* Emulation of several printers for ZX Spectrum.
 
-This package contains files for X11 version.
+This package contains files for GTK+ 3 version.
 
-%description X11 -l pl
+%description gtk3 -l pl.UTF-8
 fuse (Free Unix Spectrum Emulator) jest emulatorem ZX Spectrum.
-Jego w³a¶ciwo¶ci to:
+Jego właściwości to:
 
 * Emulacja ZX Spectrum 48K/128K/+2/+2A.
-* Mo¿liwo¶æ ³adowania programów z plików .tzx.
-* D¼wiêk.
+* Możliwość ładowania programów z plików .tzx.
+* Dźwięk.
+* Emulacja kilku drukarek przeznaczonych dla ZX Spectrum.
+
+W tym pakiecie znajdują się pliki dla wersji GTK+ 3.
 
-W tym pakiecie znajduj± siê pliki dla wersji X11.
+%package -n bash-completion-fuse
+Summary:       Bash completion for FUSE emulator commands
+Summary(pl.UTF-8):     Bashowe dopełnianie składni poleceń emulatora FUSE
+Group:         Applications/Shells
+Requires:      %{name}-common = %{version}-%{release}
+Requires:      bash-completion >= 2.0
+
+%description -n bash-completion-fuse
+Bash completion for FUSE emulator commands.
+
+%description -n bash-completion-fuse -l pl.UTF-8
+Bashowe dopełnianie składni poleceń emulatora FUSE.
 
 %prep
 %setup -q
 %patch0 -p1
-%patch1 -p0
+
+# PLD uses per-backend fuse program instead of just "fuse"
+%{__sed} -i -e '/^complete /s/ fuse$/ fuse-fb fuse-gtk fuse-gtk3 fuse-sdl fuse-svga/' data/shell-completion/bash/fuse
+%{__rm} -f settings.c settings.h options.h
 
 %build
-rm -f missing
-%{__aclocal}
-%{__autoconf}
-%{__automake}
-# version for X11
-%configure  \
-       --with-x \
-       --with-glib \
-       --without-svgalib \
-       --without-fb
-%{__make} clean
+autoreconf
+
+%define        common_opts \\\
+       --disable-silent-rules \\\
+       --with-bash-completion-dir=%{bash_compdir} \\\
+       %{nil}
+# SDL
+%if %{with sdl}
+mkdir build-sdl
+cd build-sdl
+../%configure \
+       %{common_opts} \
+       --program-suffix=-sdl \
+       --with-sdl
 %{__make}
-cp -f ./fuse ./fuse-x11
-
-#version for svga
-%ifarch %{ix86} alpha ppc
-%{__make} clean
-%configure \
-       --without-x \
-       --with-glib \
-       --without-fb \
+cd ..
+%endif
+
+# svga
+%if %{with svga}
+mkdir build-svga
+cd build-svga
+../%configure \
+       %{common_opts} \
+       --program-suffix=-svga \
        --with-svgalib
-%{__make} CFLAGS="-I/usr/include/glib-1.2 -I/usr/lib/glib/include %{rpmcflags}"
-cp -f ./fuse ./fuse-svga
+%{__make}
+cd ..
+%endif
+
+# framebuffer
+%if %{with fb}
+mkdir build-fb
+cd build-fb
+../%configure \
+       %{common_opts} \
+       --program-suffix=-fb \
+%if %{with libao}
+       --with-audio-driver=libao \
+%endif
+       --with-fb
+%{__make}
+cd ..
 %endif
 
-%{__make} clean
-%configure \
-       --without-x \
-       --with-glib \
-       --with-fb \
-       --without-svgalib
-%{__make} CFLAGS="-I/usr/include/glib-1.2 -I/usr/lib/glib/include %{rpmcflags}"
-cp -f ./fuse ./fuse-fb
+# gtk
+%if %{with gtk2}
+mkdir build-gtk2
+cd build-gtk2
+../%configure  \
+       %{common_opts} \
+       --program-suffix=-gtk \
+%if %{with libao}
+       --with-audio-driver=libao \
+%endif
+       --with-gtk
+%{__make}
+cd ..
+%endif
+
+# gtk3
+%if %{with gtk3}
+mkdir build-gtk3
+cd build-gtk3
+../%configure  \
+       %{common_opts} \
+       --enable-gtk3 \
+       --program-suffix=-gtk3 \
+%if %{with libao}
+       --with-audio-driver=libao \
+%endif
+       --with-gtk
+%{__make}
+cd ..
+%endif
 
 %install
 rm -rf $RPM_BUILD_ROOT
-%{__make} install DESTDIR=$RPM_BUILD_ROOT
+%if %{with sdl}
+%{__make} -C build-sdl install \
+       DESTDIR=$RPM_BUILD_ROOT
+%endif
+
+%if %{with svga}
+%{__make} -C build-svga install \
+       DESTDIR=$RPM_BUILD_ROOT
+%endif
 
-%ifarch %{ix86} alpha ppc
-install fuse-svga $RPM_BUILD_ROOT%{_bindir}
+%if %{with fb}
+%{__make} -C build-fb install \
+       DESTDIR=$RPM_BUILD_ROOT
 %endif
-install fuse-x11 $RPM_BUILD_ROOT%{_bindir}
-install fuse-fb  $RPM_BUILD_ROOT%{_bindir}
+
+%if %{with gtk2}
+%{__make} -C build-gtk2 install \
+       DESTDIR=$RPM_BUILD_ROOT
+%endif
+
+%if %{with gtk3}
+%{__make} -C build-gtk3 install \
+       DESTDIR=$RPM_BUILD_ROOT
+%endif
+
+cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/%{name}
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %files common
 %defattr(644,root,root,755)
-%doc README THANKS AUTHORS keysyms.dat keysyms.pl hacking/* 
-%dir %{_datadir}/%{name}
-%{_datadir}/%{name}/*
-%{_mandir}/man1/*
+%doc README THANKS AUTHORS ChangeLog keysyms.dat keysyms.pl hacking/*.txt
+%{_datadir}/%{name}
 
+%if %{with fb}
 %files fb
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/fuse-fb
+%{_mandir}/man1/fuse-fb.1*
+%endif
+
+%if %{with gtk2}
+%files gtk
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/fuse-gtk
+%{_mandir}/man1/fuse-gtk.1*
+%endif
+
+%if %{with gtk3}
+%files gtk3
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/fuse-gtk3
+%{_mandir}/man1/fuse-gtk3.1*
+%endif
+
+%if %{with sdl}
+%files sdl
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/fuse-sdl
+%{_mandir}/man1/fuse-sdl.1*
+%endif
 
-%ifarch %{ix86} alpha ppc
+%if %{with svga}
 %files svga
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/fuse-svga
+%{_mandir}/man1/fuse-svga.1*
 %endif
 
-%files X11
+%files -n bash-completion-fuse
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/fuse-x11
+%{bash_compdir}/fuse
This page took 0.22723 seconds and 4 git commands to generate.