%define prerelease rc8 %define IMMS_description \ IMMS (Intelligent Multimedia Management System) is an adaptive playlist\ framework that tracks your listening patterns and dynamically adapts to\ your taste. It is shipped with XMMS and audacious plugin.\ \ Its major features include:\ \ * IMMS is easy to install. It is purely a plugin - no XMMS patch required.\ A very lightweight embedded SQL database is used, so there's no need to setup\ a RDBMS.\ * IMMS is easy to use. Song rating is done completely transparently\ to the user. It does not get in your way.\ * IMMS does a much better job of shuffling than most players. It keeps track\ of when a song was last played, and makes sure same songs are not repeated\ too often. It is even able to recognise different versions of the same song\ (eg. remixes) and treat them as one song!\ * IMMS uses a variety of techniques to figure out which songs should be played\ together, and which should not. It studies your listening habits, as well as\ using acoustic properties of the songs themselves, such as BPM and frequency\ spectrum.\ * IMMS is fair. Even unfavoured songs have a (small) chance of being played. Name: imms Version: 3.1.0 Release: 0.6.%{prerelease}%{?dist} Summary: Adaptive playlist framework tracking and adapting to your listening patterns Group: Applications/Multimedia License: GPLv2+ URL: http://www.luminal.org/wiki/index.php/IMMS/IMMS Source0: http://www.luminal.org/files/%{name}/%{name}-%{version}-%{prerelease}.tar.bz2 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: xmms-devel BuildRequires: torch-devel BuildRequires: taglib-devel BuildRequires: sqlite-devel >= 3.2.2 BuildRequires: pcre-devel BuildRequires: fftw3-devel >= 3.0 BuildRequires: zlib-devel BuildRequires: glib2-devel BuildRequires: libglade2-devel BuildRequires: sox BuildRequires: libXScrnSaver-devel BuildRequires: autoconf BuildRequires: automake BuildRequires: audacious-devel BuildRequires: prelink %description %{IMMS_description} %package -n xmms-imms Summary: IMMS (Intelligent Multimedia Management System) plugin for XMMS Group: Applications/Multimedia Requires: %{name} = %{version}-%{release} %description -n xmms-imms This package provides IMMS plugin for XMMS. %{IMMS_description} %package -n audacious-plugins-imms Summary: IMMS (Intelligent Multimedia Management System) plugin for Audacious Group: Applications/Multimedia Requires: %{name} = %{version}-%{release} Requires: audacious %description -n audacious-plugins-imms This package provides IMMS plugin for Audacious. %{IMMS_description} %prep %setup -q -n %{name}-%{version}-%{prerelease} %build # fix gcc flags sed -i -e "s/CXXFLAGS=@CXXFLAGS@ -fno-rtti/CXXFLAGS=@CXXFLAGS@/" \ -e "s/CPPFLAGS=@CPPFLAGS@ @XCPPFLAGS@ -Wall -fPIC -D_REENTRANT \$(INCLUDES)/CPPFLAGS=@CPPFLAGS@ @XCPPFLAGS@ -fPIC \$(INCLUDES)/" vars.mk.in sed -i 's/XCPPFLAGS="-O3"/XCPPFLAGS=""/' configure.ac %configure make all %{?_smp_mflags} %install rm -rf $RPM_BUILD_ROOT # fix DESTDIR sed -i -e 's#DESTDIR=${HOME}/.xmms/Plugins/General#DESTDIR='$RPM_BUILD_ROOT'/`xmms-config --general-plugin-dir`#' \ clients/xmms/rules.mk sed -i -e 's#DESTDIR=${HOME}/.audacious/Plugins/General#DESTDIR='$RPM_BUILD_ROOT'/`pkg-config --variable=general_plugin_dir audacious`#' \ clients/audacious/rules.mk sed -i 's#${INSTALL} -D immsd immstool $(bindir)#${INSTALL} -D immsd immstool '$RPM_BUILD_ROOT'/$(bindir)#' rules.mk sed -i -e 's#${INSTALL} -m 644 -D $< $(datadir)/imms/immsremote.glade#${INSTALL} -m 644 -D $< '$RPM_BUILD_ROOT'/$(datadir)/imms/immsremote.glade#' \ -e 's#$(bindir)#'$RPM_BUILD_ROOT'$(bindir)#' build/Makefile # remove executable stack flag cause by copying data by objcopy: # objcopy -I binary -O elf64-x86-64 -B i386 --rename-section .data=.rodata,alloc,load,readonly,data,contents ../data/svm-similarity svm-similarity-data.o execstack -c build/immsd build/immstool make install %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root,-) %doc LICENSE README AUTHORS %{_bindir}/* %{_datadir}/imms %files -n xmms-imms %defattr(-,root,root,-) %{_libdir}/xmms/General/libxmmsimms.so %files -n audacious-plugins-imms %defattr(-,root,root,-) %{_libdir}/audacious/General/* %changelog * Sat May 6 2009 Milos Jakubicek - 3.1.0-0.6.rc8 - Added R: audacious for the audacious subpackage which pulls in the audacious-plugins => no reason to own the _libdir/audacious/General directory anymore. * Sat Mar 14 2009 Milos Jakubicek - 3.1.0-0.5.rc8 - Added BR: prelink because of the execstack usage. * Sun Feb 15 2009 Milos Jakubicek - 3.1.0-0.4.rc8 - Upstream release rc8: added licensing info - Removed imms-gcc43.patch (merged upstream) - Removed executable stack flag caused by copying data by objcopy * Fri Feb 13 2009 Milos Jakubicek - 3.1.0-0.3.rc7 - Upstream release rc7: fixed compilation with recent audacious => adding BR:audacious-devel and shipping the plugin. * Fri Jan 30 2009 Milos Jakubicek - 3.1.0-0.2.rc6 - added BR:autoconf,automake because configure script in the source tarball is just fake shell script running make:( - added BR:zlib-devel,sqlite-devel >= 3.2.2,pcre-devel,fftw3-devel >= 3.0, glib2-devel,libglade2-devel,sox,libXScrnSaver-devel * Wed Jan 28 2009 Milos Jakubicek - 3.1.0-0.1.rc6 - Initial release.