#
-# TODO: - check (and update if required) allegro-frame-pointer.patch
-# - check allegro-vga and allegro-svga packages if they should contains any files
-# - unpackaged files
-# - create bconds for gl, jpg, loadpng and logg
-#
# Conditional build:
%bcond_without alsa # without ALSA modules
%bcond_without dga2 # without DGA2 module
%bcond_without jack # without JACK module
-%bcond_without svga # without svgalib module
-%bcond_without vga # without vga module
+%bcond_with svga # without svgalib module
+%bcond_without vga # without vga module (x86-only)
#
+%ifnarch %{ix86}
+# x86_64 too?
+%undefine with_vga
+%endif
Summary: A game programming library
Summary(de.UTF-8): Eine Bibliothek zur Programmierung von Spielen
Summary(es.UTF-8): Una biblioteca de programación de juegos
Summary(pl.UTF-8): Biblioteka do programowania gier
Name: allegro
Version: 4.4.1.1
-Release: 1
+Release: 2
License: Giftware
Group: Libraries
Source0: http://downloads.sourceforge.net/alleg/%{name}-%{version}.tar.gz
# Source0-md5: 0f1cfff8f2cf88e5c91a667d9fd386ec
Patch0: %{name}-info.patch
-#Patch1: %{name}-frame-pointer.patch
-Patch2: %{name}-config.patch
+Patch1: %{name}-config.patch
URL: http://alleg.sourceforge.net/
BuildRequires: OpenGL-GLU-devel
BuildRequires: OpenGL-devel
BuildRequires: libstdc++-devel
BuildRequires: libvorbis-devel
BuildRequires: pkgconfig
-#%{?with_svga:BuildRequires: svgalib-devel}
+BuildRequires: rpmbuild(macros) >= 1.577
+BuildRequires: sed >= 4.0
+%{?with_svga:BuildRequires: svgalib-devel}
BuildRequires: texinfo
BuildRequires: xorg-lib-libX11-devel
BuildRequires: xorg-lib-libXcursor-devel
Summary(pl.UTF-8): Biblioteka do programowania gier - pliki nagłówkowe
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
+Requires: xorg-lib-libX11-devel
+Requires: xorg-lib-libXcursor-devel
+Requires: xorg-lib-libXext-devel
+Requires: xorg-lib-libXpm-devel
+Requires: xorg-lib-libXxf86vm-devel
+Obsoletes: allegro-static
%description devel
Allegro is a cross-platform library intended for use in computer games
Ten pakiet zawiera pliki nagłówkowe niezbędne do kompilowania
aplikacji wykorzystujących bibliotekę allegro.
-%package static
-Summary: A game programming library - static libraries
-Summary(pl.UTF-8): Biblioteka do programowania gier - biblioteki statyczne
-Group: Development/Libraries
-Requires: %{name}-devel = %{version}-%{release}
-Requires: xorg-lib-libX11-devel
-Requires: xorg-lib-libXcursor-devel
-Requires: xorg-lib-libXext-devel
-Requires: xorg-lib-libXpm-devel
-Requires: xorg-lib-libXxf86vm-devel
+%package dga2
+Summary: A game programming library - DGA2 module
+Summary(pl.UTF-8): Biblioteka do programowania gier - moduł dla DGA2
+Group: Libraries
+Requires: %{name} = %{version}-%{release}
-%description static
+%description dga2
Allegro is a cross-platform library intended for use in computer games
and other types of multimedia programming.
-This package contains static libraries for linking with allegro
-applications.
+This package contains module for use with DGA.
-%description static -l pl.UTF-8
+%description dga2 -l pl.UTF-8
Allegro jest przenośną biblioteką przeznaczoną do wykorzystania w
grach komputerowych i innych rodzajach oprogramowania multimedialnego.
-Ten pakiet zawiera biblioteki statyczne do konsolidacji z aplikacjami
-wykorzystującymi allegro.
+Ten pakiet zawiera moduł do wykorzystania z DGA.
-%package svgalib
-Summary: A game programming library - svgalib module
-Summary(pl.UTF-8): Biblioteka do programowania gier - moduł dla svgalib
+%package fbcon
+Summary: A game programming library - FrameBuffer module
+Summary(pl.UTF-8): Biblioteka do programowania gier - moduł dla FrameBuffera
Group: Libraries
Requires: %{name} = %{version}-%{release}
-%description svgalib
+%description fbcon
Allegro is a cross-platform library intended for use in computer games
and other types of multimedia programming.
-This package contains module for use with allegro and svgalib.
+This package contains module for use with Linux FrameBuffer.
-%description svgalib -l pl.UTF-8
+%description fbcon -l pl.UTF-8
Allegro jest przenośną biblioteką przeznaczoną do wykorzystania w
grach komputerowych i innych rodzajach oprogramowania multimedialnego.
-Ten pakiet zawiera moduł do wykorzystania allegro z svgalibem.
+Ten pakiet zawiera moduł do wykorzystania z linuksowym FrameBufferem.
-%package dga2
-Summary: A game programming library - DGA2 module
-Summary(pl.UTF-8): Biblioteka do programowania gier - moduł dla DGA2
+%package svgalib
+Summary: A game programming library - svgalib module
+Summary(pl.UTF-8): Biblioteka do programowania gier - moduł dla svgalib
Group: Libraries
Requires: %{name} = %{version}-%{release}
-%description dga2
+%description svgalib
Allegro is a cross-platform library intended for use in computer games
and other types of multimedia programming.
-This package contains module for use with DGA.
+This package contains module for use with allegro and svgalib.
-%description dga2 -l pl.UTF-8
+%description svgalib -l pl.UTF-8
Allegro jest przenośną biblioteką przeznaczoną do wykorzystania w
grach komputerowych i innych rodzajach oprogramowania multimedialnego.
-Ten pakiet zawiera moduł do wykorzystania z DGA.
+Ten pakiet zawiera moduł do wykorzystania allegro z svgalibem.
%package vga
Summary: A game programming library - vga module
Ten pakiet zawiera moduł do wykorzystania z biblioteką dźwiękową JACK.
+%package addons
+Summary: Allegro addon libraries
+Summary(pl.UTF-8): Dodatkowe biblioteki Allegro
+Group: Libraries
+Requires: %{name} = %{version}-%{release}
+Obsoletes: allegro-gl
+
+%description addons
+Allegro addon libraries: AllegroGL, JPGAlleg, loadpng, logg.
+
+%description addons -l pl.UTF-8
+Dodatkowe biblioteki Allegro: AllegroGL, JPGAlleg, loadpng, logg.
+
+%package addons-devel
+Summary: Header files for Allegro addon libraries
+Summary(pl.UTF-8): Pliki nagłówkowe dodatkowych bibliotek Allegro
+Group: Development/Libraries
+Requires: %{name}-addons = %{version}-%{release}
+Requires: %{name}-devel = %{version}-%{release}
+Requires: OpenGL-GLU-devel
+Requires: OpenGL-devel
+Requires: libpng-devel
+Requires: libvorbis-devel
+Obsoletes: allegro-gl-devel
+
+%description addons-devel
+Header files for Allegro addon libraries: AllegroGL, JPGAlleg,
+loadpng, logg.
+
+%description addons-devel -l pl.UTF-8
+Pliki nagłówkowe dodatkowych bibliotek Allegro: AllegroGL, JPGAlleg,
+loadpng, logg.
+
%package tools
Summary: A game programming library - tools
Summary(de.UTF-8): Zusätzliche Hilfprogramme für die Allegro Bibliothek
%prep
%setup -q
%patch0 -p1
-#%%patch1 -p1
-%patch2 -p1
+%patch1 -p1
+
+sed -i -e 's/ADDON_LINKAGE STATIC/ADDON_LINKAGE SHARED/' CMakeLists.txt
%build
install -d build
cd build
%cmake .. \
- -DCMAKE_BUILD_TYPE=%{!?debug:Release}%{?debug:Debug} \
- -DCMAKE_INSTALL_PREFIX=%{_prefix} \
- -DCMAKE_VERBOSE_MAKEFILE=1 \
- -DMANDIR=%{_mandir} \
-DINFODIR=%{_infodir} \
-DPLATFORM_LIBS=-ldl \
+ -DWANT_LINUX_CONSOLE=1 \
%{!?with_vga:-DWANT_LINUX_VGA=off} \
- %{!?with_svga:-DWANT_LINUX_SVGALIB=off} \
-%if "%{_lib}" == "lib64"
- -DLIB_SUFFIX=64
-%endif
+ %{!?with_svga:-DWANT_LINUX_SVGALIB=off}
%{__make}
%postun devel -p /sbin/postshell
-/usr/sbin/fix-info-dir -c %{_infodir}
+%post addons -p /sbin/ldconfig
+%postun addons -p /sbin/ldconfig
+
%files
%defattr(644,root,root,755)
%doc AUTHORS CHANGES THANKS readme.txt todo.txt
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/allegro-config
%attr(755,root,root) %{_libdir}/liballeg.so
-%{_includedir}/alleggl.h
+%{_includedir}/allegro
%{_includedir}/allegro.h
-%{_includedir}/jpgalleg.h
-%{_includedir}/logg.h
+%{_includedir}/linalleg.h
%{_includedir}/xalleg.h
-%{_includedir}/allegro
-%{_includedir}/allegrogl
# XXX: aren't some names too generic?
%{_mandir}/man3/*.3*
%{_infodir}/allegro.info*
%{_pkgconfigdir}/allegro.pc
-%{_pkgconfigdir}/allegrogl.pc
-%{_pkgconfigdir}/jpgalleg.pc
-%{_pkgconfigdir}/loadpng.pc
-%{_pkgconfigdir}/logg.pc
-%files static
+%if %{with dga2}
+%files dga2
%defattr(644,root,root,755)
-# XXX: static-only libs belong to -devel!
-%{_libdir}/liballeggl.a
-%{_libdir}/libjpgalleg.a
-%{_libdir}/libloadpng.a
-%{_libdir}/liblogg.a
+%attr(755,root,root) %{_libdir}/allegro/4.4.1/alleg-dga2.so
+%endif
-%if %{with svga}
-%files svgalib
+%files fbcon
%defattr(644,root,root,755)
-#%%attr(755,root,root) %{_libdir}/allegro/%{version}/alleg-svgalib.so
-%endif
+%attr(755,root,root) %{_libdir}/allegro/4.4.1/alleg-fbcon.so
-%if %{with dga2}
-%files dga2
+%if %{with svga}
+%files svgalib
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/allegro/4.4.1/alleg-dga2.so
+%attr(755,root,root) %{_libdir}/allegro/4.4.1/alleg-svgalib.so
%endif
-%ifarch %{ix86}
%if %{with vga}
%files vga
%defattr(644,root,root,755)
-#%%attr(755,root,root) %{_libdir}/allegro/%{version}/alleg-vga.so
-%endif
+%attr(755,root,root) %{_libdir}/allegro/4.4.1/alleg-vga.so
%endif
%if %{with alsa}
%attr(755,root,root) %{_libdir}/allegro/4.4.1/alleg-jack.so
%endif
+%files addons
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/liballeggl.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/liballeggl.so.4.4
+%attr(755,root,root) %{_libdir}/libjpgalleg.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libjpgalleg.so.4.4
+%attr(755,root,root) %{_libdir}/libloadpng.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libloadpng.so.4.4
+%attr(755,root,root) %{_libdir}/liblogg.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/liblogg.so.4.4
+
+%files addons-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/liballeggl.so
+%attr(755,root,root) %{_libdir}/libjpgalleg.so
+%attr(755,root,root) %{_libdir}/libloadpng.so
+%attr(755,root,root) %{_libdir}/liblogg.so
+%{_includedir}/allegrogl
+%{_includedir}/alleggl.h
+%{_includedir}/jpgalleg.h
+%{_includedir}/loadpng.h
+%{_includedir}/logg.h
+%{_pkgconfigdir}/allegrogl.pc
+%{_pkgconfigdir}/jpgalleg.pc
+%{_pkgconfigdir}/loadpng.pc
+%{_pkgconfigdir}/logg.pc
+
%files tools
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/colormap