allegro/allegro.spec
Hans de Goede c12a6c2dd3 - Look for /etc/timidity.cfg instead of /usr/share/timidity/timidity.cfg,
as the latter is no longer available now that Fedora has switched from
    timidity++-patches to PersonalCopy-Lite-patches
2008-05-05 16:18:48 +00:00

526 lines
19 KiB
RPMSpec
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Name: allegro
Version: 4.2.2
Release: 10%{?dist}
Summary: A game programming library
Summary(es): Una libreria de programacion de juegos
Summary(fr): Une librairie de programmation de jeux
Summary(it): Una libreria per la programmazione di videogiochi
Summary(cs): Knihovna pro programování her
Group: System Environment/Libraries
License: Giftware
URL: http://alleg.sourceforge.net/
Source: http://downloads.sourceforge.net/alleg/allegro-%{version}.tar.gz
Patch1: allegro-4.0.3-cfg.patch
Patch2: allegro-4.2.0-nostrip.patch
Patch3: allegro-4.2.0-noexecstack.patch
Patch4: allegro-4.2.0-multilib.patch
Patch5: allegro-4.2.1-noexecmod.patch
Patch6: allegro-4.0.3-libdir.patch
Patch7: allegro-4.2.2-pulseaudio.patch
Patch8: allegro-4.2.2-gcc43.patch
Patch9: allegro-4.2.2-gcc43-asm.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: esound-devel, texinfo, perl, arts-devel, glib2-devel
BuildRequires: xorg-x11-proto-devel, libX11-devel, libXext-devel, libXt-devel
BuildRequires: libXpm-devel, libXcursor-devel, libXxf86vm-devel
BuildRequires: libXxf86dga-devel, jack-audio-connection-kit-devel, autoconf
Requires: timidity++-patches
%ifarch %{ix86}
Requires(post): policycoreutils /sbin/ldconfig
Requires(postun): policycoreutils /sbin/ldconfig
%endif
%description
Allegro is a cross-platform library intended for use in computer games
and other types of multimedia programming.
%description -l es
Allegro es una librería multi-plataforma creada para ser usada en la
programación de juegos u otro tipo de programación multimedia.
%description -l fr
Allegro est une librairie multi-plateforme destinée à être utilisée
dans les jeux vidéo ou d'autres types de programmation multimédia.
%description -l it
Allegro è una libreria multipiattaforma dedicata all'uso nei
videogiochi ed in altri tipi di programmazione multimediale.
%description -l cs
Allegro je multiplatformní knihovna pro počítačové hry a jiné
typy multimediálního programování.
%package devel
Summary: A game programming library
Summary(es): Una libreria de programacion de juegos
Summary(fr): Une librairie de programmation de jeux
Summary(it): Una libreria per la programmazione di videogiochi
Summary(cs): Knihovna pro programování her
Group: Development/Libraries
Provides: %{name}-static = %{version}-%{release}
Requires: %{name} = %{version}-%{release}, xorg-x11-proto-devel
Requires: libX11-devel, libXcursor-devel
Requires(post): /sbin/install-info
Requires(preun): /sbin/install-info
%description devel
Allegro is a cross-platform library intended for use in computer games
and other types of multimedia programming. This package is needed to
build programs written with Allegro.
%description devel -l es
Allegro es una librería multi-plataforma creada para ser usada en la
programación de juegos u otro tipo de programación multimedia. Este
paquete es necesario para compilar los programas que usen Allegro.
%description devel -l fr
Allegro est une librairie multi-plateforme destinée à être utilisée
dans les jeux vidéo ou d'autres types de programmation multimédia. Ce
package est nécessaire pour compiler les programmes utilisant Allegro.
%description devel -l it
Allegro è una libreria multipiattaforma dedicata all'uso nei
videogiochi ed in altri tipi di programmazione multimediale. Questo
pacchetto è necessario per compilare programmi scritti con Allegro.
%description devel -l cs
Allegro je multiplatformní knihovna pro počítačové hry a jiné
typy multimediálního programování. Tento balíček je je potřebný
k sestavení programů napsaných v Allegru.
%package tools
Summary: Extra tools for the Allegro programming library
Summary(es): Herramientas adicionales para la librería de programación Allegro
Summary(fr): Outils supplémentaires pour la librairie de programmation Allegro
Summary(it): Programmi di utilità aggiuntivi per la libreria Allegro
Summary(cs): Přídavné nástroje pro programovou knihovnu Allegro
Group: Development/Tools
Requires: %{name} = %{version}-%{release}
%description tools
Allegro is a cross-platform library intended for use in computer games
and other types of multimedia programming. This package contains extra
tools which are useful for developing Allegro programs.
%description tools -l es
Allegro es una librería multi-plataforma creada para ser usada en la
programación de juegos u otro tipo de programación multimedia. Este
paquete contiene herramientas adicionales que son útiles para
desarrollar programas que usen Allegro.
%description tools -l fr
Allegro est une librairie multi-plateforme destinée à être utilisée
dans les jeux vidéo ou d'autres types de programmation multimédia. Ce
package contient des outils supplémentaires qui sont utiles pour le
développement de programmes avec Allegro.
%description tools -l it
Allegro è una libreria multipiattaforma dedicata all'uso nei
videogiochi ed in altri tipi di programmazione multimediale. Questo
pacchetto contiene programmi di utilità aggiuntivi utili allo sviluppo
di programmi con Allegro.
%description tools -l cs
Allegro je multiplatformní knihovna pro počítačové hry a jiné
typy multimediálního programování. Tento balíček obsahuje přídavné nástroje,
které jsou užitečné pro vývoj Allegro programů.
%package esound-plugin
Summary: Allegro Enlightened Sound Daemon plugin
Group: System Environment/Libraries
Requires: %{name} = %{version}-%{release}
%description esound-plugin
This package contains a plugin for Allegro which enables Allegro to playback
sound through the Enlightened Sound Daemon (ESD / esound).
%package arts-plugin
Summary: Allegro aRts (analog realtime synthesizer) plugin
Group: System Environment/Libraries
Requires: %{name} = %{version}-%{release}
%description arts-plugin
This package contains a plugin for Allegro which enables Allegro to playback
sound through aRts (analog realtime synthesizer).
%package jack-plugin
Summary: Allegro JACK (Jack Audio Connection Kit) plugin
Group: System Environment/Libraries
Requires: %{name} = %{version}-%{release}
%description jack-plugin
This package contains a plugin for Allegro which enables Allegro to playback
sound through JACK (Jack Audio Connection Kit).
%prep
%setup -q
%patch1 -p1 -b .config
%patch2 -p1 -z .nostrip
%patch3 -p1 -z .noexecstack
%patch4 -p1 -z .multilib
%patch5 -p1 -z .noexecmod
%patch6 -p1 -z .multilib2
%patch7 -p1 -z .pulse
%patch8 -p1 -z .gcc43
%patch9 -p1 -z .gcc43-asm
iconv -f iso-8859-1 -t utf-8 docs/src/allegro._tx > docs/src/allegro._tx.tmp
mv docs/src/allegro._tx.tmp docs/src/allegro._tx
%build
%configure \
%ifnarch %{ix86}
--enable-vga=no --enable-vbeaf=no \
%endif
--enable-svgalib=no \
--enable-dbglib=yes \
--enable-proflib=yes \
--enable-opts=generic
# GRRR configure insists on adding -fomit-frame-pointer, remove it
sed -i 's/-fomit-frame-pointer//g' makefile
# Explicitly set PROG_LDFLAGS to avoid stripping of the utilities
make CFLAGS="$RPM_OPT_FLAGS" PROG_LDFLAGS="-Wl,--export-dynamic"
%install
rm -rf $RPM_BUILD_ROOT
make install install-man install-info \
DESTDIR=$RPM_BUILD_ROOT LDCONFIG=/bin/true
install -m 755 docs/makedoc $RPM_BUILD_ROOT%{_bindir}/allegro-makedoc
install -Dpm 644 allegro.cfg $RPM_BUILD_ROOT%{_sysconfdir}/allegrorc
install -dm 755 $RPM_BUILD_ROOT%{_datadir}/allegro
install -pm 644 keyboard.dat language.dat $RPM_BUILD_ROOT%{_datadir}/allegro
find demo examples setup -type f -perm +111 -print | xargs rm
chmod 755 `find $RPM_BUILD_ROOT%{_libdir} -type f -name "*.so"`
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
rm -f $RPM_BUILD_ROOT%{_libdir}/liball{p,d}_unsharable.a
%ifarch %{ix86}
%post
/sbin/ldconfig
# Set SELinux file_context for vga plugin in the policy
semanage fcontext -a -t textrel_shlib_t \
'%{_libdir}/allegro/4\.2\.1/alleg-vga\.so' 2>/dev/null || :
# Actually change the context
chcon -t textrel_shlib_t %{_libdir}/allegro/%{version}/alleg-vga.so \
2> /dev/null || :
%else
%post -p /sbin/ldconfig
%endif
%ifarch %{ix86}
%postun
/sbin/ldconfig
# SELinux support
if [ $1 -eq 0 ]; then # final removal
semanage fcontext -d -t textrel_shlib_t \
'%{_libdir}/allegro/4\.2\.1/alleg-vga\.so' 2>/dev/null || :
fi
%else
%postun -p /sbin/ldconfig
%endif
%post devel
/sbin/install-info %{_infodir}/allegro.info %{_infodir}/dir 2>/dev/null || :
%preun devel
if [ $1 -eq 0 ] ; then
/sbin/install-info --delete %{_infodir}/allegro.info %{_infodir}/dir \
2>/dev/null || :
fi
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root,-)
%doc readme.txt docs/build/unix.txt docs/build/linux.txt
%doc AUTHORS CHANGES THANKS
%config(noreplace) %{_sysconfdir}/allegrorc
%{_libdir}/liballeg*.so*
%{_libdir}/allegro
%{_datadir}/allegro
%exclude %{_libdir}/allegro/%{version}/alleg-esddigi.so
%exclude %{_libdir}/allegro/%{version}/alleg-artsdigi.so
%exclude %{_libdir}/allegro/%{version}/alleg-jackdigi.so
%files devel
%defattr(-,root,root,-)
%doc docs/txt/abi.txt docs/txt/ahack.txt docs/txt/allegro.txt
%doc docs/txt/const.txt docs/txt/faq.txt docs/txt/help.txt
%doc todo.txt docs/html
%doc demo examples setup
%{_bindir}/allegro-config
%{_bindir}/allegro-makedoc
%{_libdir}/liballeg_unsharable.a
%{_libdir}/liball?.so.*
%{_libdir}/liball?-%{version}.so
%{_includedir}/*alleg*
%{_infodir}/allegro.info*
%{_mandir}/man3/*
%{_datadir}/aclocal/allegro.m4
%files tools
%defattr(-,root,root,-)
%doc tools/plugins/plugins.txt
%{_bindir}/colormap
%{_bindir}/dat
%{_bindir}/dat2s
%{_bindir}/dat2c
%{_bindir}/exedat
%{_bindir}/grabber
%{_bindir}/pack
%{_bindir}/pat2dat
%{_bindir}/rgbmap
%{_bindir}/textconv
%files esound-plugin
%defattr(-,root,root,-)
%{_libdir}/allegro/%{version}/alleg-esddigi.so
%files arts-plugin
%defattr(-,root,root,-)
%{_libdir}/allegro/%{version}/alleg-artsdigi.so
%files jack-plugin
%defattr(-,root,root,-)
%{_libdir}/allegro/%{version}/alleg-jackdigi.so
%changelog
* Mon May 5 2008 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.2-10
- Look for /etc/timidity.cfg instead of /usr/share/timidity/timidity.cfg,
as the latter is no longer available now that Fedora has switched from
timidity++-patches to PersonalCopy-Lite-patches
* Tue Apr 1 2008 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.2-9
- Fix i386 asm code compilation with latest binutils
- Remove -fomit-frame-pointer from the compile flags of the default build, so
that we get a usefull debuginfo even for the normal (non debug/profile) lib
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 4.2.2-8
- Autorebuild for GCC 4.3
* Mon Jan 21 2008 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.2-7
- Add makedoc utility to allegro-devel as allegro-makedoc (bz 429450)
- Fix sound when using pulseaudio
- Fix compilation of inline asm with gcc 4.3
* Sun Oct 14 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.2-6
- Require timidity++-patches instead of timidity++ itself so that we don't
drag in arts and through arts, qt and boost
- Add BuildRequires: glib2-devel to workaround RH bug 331841
* Wed Aug 22 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.2-5
- Update to pristine upstream sources instead of using allegro.cc pre-release
* Tue Aug 21 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.2-4
- Rebuild for buildId
* Sun Aug 12 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.2-3
- Enable building of JACK (Jack Audio Connection Kit) sound output plugin
- Put non default sound output plugins in their own subpackage to avoid
dragging in unwanted deps (allegro-esound-plugin, allegro-arts-plugin,
allegro-jack-plugin) (bz 250736)
- Make man pages and info file UTF-8
* Tue Jul 24 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.2-2
- sync .libdir patch to 4.2.2 and use it again for multilib devel goodness
(make allegro-devel i386 and x86_64 parallel installable again)
* Mon Jul 23 2007 Jindrich Novy <jnovy@redhat.com> 4.2.2-1
- update to 4.2.2
- drop .libdir patch
- sync .multilib patch
* Fri Jul 6 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.1-3
- Silence output of chcon command in %%post, because otherwise users get this:
"chcon: can't apply partial context to unlabeled file" when installing with
selinux disabled (bz 246820)
* Fri Dec 22 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.1-2
- Restore multilib devel goodness patch (make allegro-devel i386 and x86_64
parallel installable)
- Restore execstack patch so that binaries linked against allegro do not
require an execstack and thus work under selinux (without this
liballeg_unshareable.a contains object files which require an executable
stack which will end up in any app linked against allegro)
- Make alleg-dga2.so plugin 100% PIC so it can load with selinux enabled
- Mark alleg-vga.so plugin as textrel_shlib_t as it isn't 100% PIC and cannot
be fixed (easily) to be 100% PIC
* Tue Nov 28 2006 Jindrich Novy <jnovy@redhat.com> 4.2.1-1
- update to 4.2.1
* Sun Oct 15 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.0-18
- Multilib devel goodness (make allegro-devel i386 and x86_64 parallel
installable)
* Sat Sep 2 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.0-17
- FE6 Rebuild
* Fri Jul 14 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.0-16
- Don't package the main allegro lib in -devel as its already in the main
package, iow only put the debug and profile versions -devel.
* Thu Jul 6 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.0-15
- Stop allegro from making applications linked against it claim that they
need an executable stack (Patch11). Unfortunatly this requires a rebuild of
all applications linked against allegro.
* Mon Jun 26 2006 Jindrich Novy <jnovy@redhat.com> 4.2.0-14
- compile alld and allp debuging/profiling libraries (#196616)
- fix typo in release caused by recent changes
* Sat Jun 10 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.0-13
- Add autoconf BR for missing autoheader with the new mock config.
* Tue Mar 21 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.0-12
- Sleep in xwindows vsync emulation, instead of busy waiting.
- Add %%{dist} to Release
* Mon Mar 13 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.0-11
- really, _really_ fix asm stretch code on i386 with NX processors, long
  story see bugzilla bug 185214 .
* Sat Mar 11 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.0-10
- really fix asm stretch code on i386 with NX processors, on OpenBSD mprotects
first argument does not need to be page-aligned, but on Linux it does.
Note that for this to work you may also need to disable selinux (rh 185214)
* Wed Mar 8 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.0-9
- fix fullscreen <-> window switching bug (bz 183645)
- fix asm stretch code on i386 with NX processors, thanks to openBSD.
* Mon Feb 27 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.0-8
- fix sound not working on PPC (bz 183112)
- fix allegro not finding and loading plugins/modules on x86_64 (bz 183113)
* Tue Feb 8 2006 Jindrich Novy <jnovy@redhat.com> 4.2.0-7
- set timidity++ as Requires instead of BuildRequires
* Tue Feb 7 2006 Jindrich Novy <jnovy@redhat.com> 4.2.0-6
- fix digmid loading of timidity midi patches (#180154)
* Wed Jan 25 2006 Jindrich Novy <jnovy@redhat.com> 4.2.0-5
- update default allegro configuration to use sound successfully,
thanks to Hans de Goede (#178383)
- add timidity++ dependency
* Mon Jan 23 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.0-4
- add allegro-4.2.0-nostrip.patch, so that the main .so file
doesn't get stripped and we actually get debuginfo for it in
allegro-debuginfo
* Fri Jan 20 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 4.2.0-3
- update / fix BuildRequires for modular X (bz 178245)
* Fri Dec 16 2005 Jindrich Novy <jnovy@redhat.com> 4.2.0-2
- update dependencies for the new modular X
- disable _smp_mflags to workaround build failure caused
by bad dependencies
* Wed May 25 2005 Jindrich Novy <jnovy@redhat.com> 4.2.0-1
- update to 4.2.0
- package dat2c, allegro.m4
- replace XFree86-devel Buildrequires with xorg-x11-devel
- drop mmaptest, novga, gcc4 patches
* Wed May 25 2005 Jindrich Novy <jnovy@redhat.com> 4.0.3-13
- fix compilation on x86_64 (#158648)
* Sun May 22 2005 Jeremy Katz <katzj@redhat.com> - 4.0.3-12
- rebuild on all arches
* Mon May 2 2005 Jindrich Novy <jnovy@redhat.com> 0:4.0.3-11
- fix build failures with gcc4 (#156224)
- don't use %%{name} in patch names
- add Czech translation to package description/summary
* Fri Apr 7 2005 Michael Schwendt <mschwendt[AT]users.sf.net>
- rebuilt
* Fri Mar 4 2005 Ville Skyttä <ville.skytta at iki.fi>
- Split context marked dependency syntax to work around #118773.
* Sun Feb 13 2005 Ville Skyttä <ville.skytta at iki.fi> - 0:4.0.3-9
- Disable vga and vbeaf on all non-%%{ix86}.
- Fix lib paths in allegro-config for 64-bit archs.
- Use *nix commands in allegrorc's [grabber] section.
* Sun Feb 13 2005 Ville Skyttä <ville.skytta at iki.fi> - 0:4.0.3-8
- Build without vga and vbeaf on non-x86-like archs.
- Apply upstream patch to fix build without vga.
* Fri Nov 12 2004 Ville Skyttä <ville.skytta at iki.fi> - 0:4.0.3-7
- Explicitly disable svgalib for now.
- Let rpm take care of all stripping.
- Build with whatever the compiler supports, MMX and friends are detected
at runtime.
- Minor specfile style improvements.
* Wed Nov 10 2004 Michael Schwendt <mschwendt[AT]users.sf.net> - 0:4.0.3-6
- Fix build for FC3 via fixed mmap test in configure script.
* Mon Nov 10 2003 Ville Skyttä <ville.skytta at iki.fi> - 0:4.0.3-0.fdr.5
- Use MMX/SSE where appropriate (bug 959).
* Mon May 26 2003 Ville Skyttä <ville.skytta at iki.fi> - 0:4.0.3-0.fdr.4
- Include *.so.* symlink.
- Re-introduce ldconfigs.
- *grumble*
* Mon May 26 2003 Ville Skyttä <ville.skytta at iki.fi> - 0:4.0.3-0.fdr.3
- -devel Requires XFree86-devel.
* Mon May 26 2003 Ville Skyttä <ville.skytta at iki.fi> - 0:4.0.3-0.fdr.2
- Handle --excludedocs installs gracefully.
- BuildRequires arts-devel.
- Make *.so executable so RPM groks autodependencies.
- Update to accordance with current Fedora spec template.
* Sat Apr 26 2003 Ville Skyttä <ville.skytta at iki.fi> - 0:4.0.3-0.fdr.1
- Update to 4.0.3.
- Make build honor optflags.
- Remove redundant ldconfigs.
* Sat Apr 5 2003 Ville Skyttä <ville.skytta at iki.fi> - 0:4.0.3-0.fdr.0.1.rc3
- Update to 4.0.3RC3.
* Thu Mar 20 2003 Ville Skyttä <ville.skytta at iki.fi> - 0:4.0.3-0.fdr.0.1.rc2
- Update to 4.0.3RC2, and to current Fedora guidelines.
- make -jX works again.
- Don't remove info files on -devel upgrade.
* Wed Feb 19 2003 Warren Togami <warren@togami.com> 4.0.3-0.beta2.fedora.2
- Disable smp make flags, Makefile needs fixing
* Wed Feb 12 2003 Ville Skyttä <ville.skytta at iki.fi> - 4.0.3-0.beta2.fedora.1
- First Fedora release, based on upstream source RPM.
* Fri Dec 07 2001 Angelo Mottola <lillo@users.sourceforge.net> 4.0.0-1
- added italian translation
* Tue Oct 02 2001 Peter Wang <tjaden@users.sourceforge.net> 3.9.39-1
- icon courtesy of Johan Peitz
* Mon Sep 24 2001 Peter Wang <tjaden@users.sourceforge.net>
- remaining translations by Eric Botcazou and Grzegorz Adam Hankiewicz
* Sun Sep 23 2001 Peter Wang <tjaden@users.sourceforge.net>
- translations by Eric Botcazou and Javier González
- language.dat and keyboard.dat moved to main package
- devel split into devel and tools packages
- makedoc added to tools package
* Wed Sep 16 2001 Peter Wang <tjaden@users.sourceforge.net>
- merged Osvaldo's spec file with gfoot's spec and some other changes
* Wed Sep 27 2000 Osvaldo Santana Neto <osvaldo@conectiva.com>
- updated to 3.9.33