Blob Blame History Raw
%define debug 0

%define strip_bin 0
%define final 0
%define rpm_clean 1

%define desktop_file 1
%define desktop_file_utils_version 0.2.93

# support mp3
%define build_mpeglib 0

%define my_vendor kde

%define qt_version 3.1.2

%define libtool 1

%define redhatify 1

%define koncd 0

%if %{build_mpeglib}
%define patch_name %{nil}
%else
%define patch_name -patched
%endif

Version: 3.1.4
Release: 0.9x.1
Epoch: 6
Name: kdemultimedia
Prefix: /usr
Summary: Multimedia applications for the K Desktop Environment (KDE).
Group: Applications/Multimedia
BuildRoot: %{_tmppath}/%{name}-buildroot
License: GPL
Url: http://www.kde.org

Source: ftp://ftp.kde.org/pub/kde/stable/%{version}/src/%{name}-%{version}%{patch_name}.tar.bz2

Patch1: kdemultimedia-3.1-redhat.patch
Patch2: kdemultimedia-2.1-glibc-2.2.2.patch
Patch3: kdemultimedia-3.0.4-debug.patch
Patch4: kdemultimedia-3.1.desktop.patch
Patch5: kdemultimedia-cpp.patch
Patch6: kde-libtool.patch

Prereq: /sbin/ldconfig

Requires: kdelibs >= 6:%{version}
Requires: kdebase >= 6:%{version}
Requires: timidity++

BuildRequires: qt-devel >= %{qt_version}
BuildRequires: zlib-devel
BuildRequires: XFree86-devel
BuildRequires: kdelibs-devel >= 6:%{version}
BuildRequires: kdebase-devel >= 6:%{version}
BuildRequires: libjpeg-devel
BuildRequires: gcc-c++
BuildRequires: glibc-devel
BuildRequires: perl
BuildRequires: libvorbis-devel

Obsoletes: %{name}-libs
Obsoletes: %{name}-brahms
Obsoletes: %{name}-arts
Obsoletes: %{name}-kfile
Obsoletes: kaboodle
Obsoletes: noatun
Obsoletes: kmid
Obsoletes: kmidi
Obsoletes: kmix
Obsoletes: koncd
Obsoletes: kscd
Obsoletes: aktion

Provides: %{name}-libs
Provides: %{name}-brahms
Provides: %{name}-arts
Provides: %{name}-kfile
Provides: kaboodle
Provides: noatun
Provides: kmid
Provides: kmidi
Provides: kmix
Provides: koncd
Provides: kscd

%if %{desktop_file}
BuildRequires: desktop-file-utils >= %{desktop_file_utils_version}
%endif

%description
The K Desktop Environment (KDE) is a GUI desktop for the X Window
System. The kdemultimedia package contains multimedia applications for
KDE, including:

  kmid, a midi player
  kmidi, a midi-to-wav player/converter
  kmix, a mixer; and kscd, an audio CD player
  arts, additional functionality for the aRts sound system
  kaboodle, a media player
  noatun, a media player
  krec, a recording tool
  kscd, a Audio-CD player
  kaudiocreator, a graphical frontend for audio file creation 


%package devel
Summary: Development files for aRts plugins
Group: Development/Libraries
Requires: %{name} = %{epoch}:%{version}-%{release}


%description devel
Development files for aRts and noatun plugins.
Install kdemultimedia-devel if you wish to develop or compile any
applications using aRtsbuilder, aRtsmidi, aRtskde, aRts modules or
noatun plugins.


%prep
rm -rf $RPM_BUILD_ROOT

%setup -q -n %{name}-%{version}%{patch_name}
%patch1 -p1 -b .redhat
%patch2 -p1 -b .glibc222
%patch3 -p1 -b .debug
%patch4 -p1 -b .desktop
%patch5 -p1
%patch6 -p1

# remove aktion, we don't ship xanim (license problems)
%if %{redhatify}
rm -rf doc/aktion aktion
%endif

perl -pi -e "s/-fomit-frame-pointer//g" admin/acinclude.m4.in
perl -pi -e "s,examples,,g" kmid/Make*

# Workaround for legacy auto* tools
%if %{libtool}
[ -x /usr/bin/autoconf-2.5? ] && ln -sf /usr/bin/autoconf-2.5? autoconf
[ -x /usr/bin/autoheader-2.5? ] && ln -sf /usr/bin/autoheader-2.5? autoheader
[ -x /usr/bin/aclocal-1.5 ] && ln -sf /usr/bin/aclocal-1.5 aclocal
[ -x /usr/bin/automake-1.5 ] && ln -sf /usr/bin/automake-1.5 automake
export PATH=`pwd`:$PATH
make -f admin/Makefile.common cvs
%endif

# clean up source
find . -name "*.moc" -exec rm -rf {} \;

%build
unset QTDIR || : ; . /etc/profile.d/qt.sh
FLAGS="$RPM_OPT_FLAGS -DNDEBUG"
export KDEDIR=%{prefix}
export PATH=%{prefix}/bin:$PATH
export CFLAGS="$FLAGS"
export CXXFLAGS="$FLAGS -fno-use-cxa-atexit"

%if ! %{build_mpeglib}
export DO_NOT_COMPILE="mpeglib mpeglib_artsplug mpg123_artsplugin"
%endif

%configure  --with-qt-libraries=$QTDIR/lib \
            --disable-motif \
            --with-motif-includes=none \
            --with-motif-libraries=none \
            --disable-debug \
            --without-debug \
            --without-alsa \
            --includedir=/usr/include/kde \
            --with-xinerama \
%if %{final}
            --enable-final \
%endif
            --disable-xaw

make %{?_smp_mflags}
make %{?_smp_mflags} -C doc
make %{?_smp_mflags} -C kioslave/audiocd/kcmaudiocd
make %{?_smp_mflags} -C kaudiocreator

%install
%if %{strip_bin}
make install-strip DESTDIR=$RPM_BUILD_ROOT
%else
make install DESTDIR=$RPM_BUILD_ROOT
%endif

make -C doc DESTDIR=$RPM_BUILD_ROOT install
make -C kioslave/audiocd/kcmaudiocd DESTDIR=$RPM_BUILD_ROOT install
make -C kaudiocreator DESTDIR=$RPM_BUILD_ROOT install

# KOnCD configuration...
%if %{koncd}
mkdir -p $RPM_BUILD_ROOT%{_datadir}/config
cat >$RPM_BUILD_ROOT%{_datadir}/config/koncdrc <<EOF
[Program paths]
cdrdao_path=/usr/bin/cdrdao
cdrecord_path=/usr/bin/cdrecord
mkisofs_path=/usr/bin/mkisofs
readcd_path=/usr/bin/readcd
EOF
%endif

# strip binaries if needed
%if %{strip_bin}
for i in $RPM_BUILD_ROOT/%{prefix}/bin/*; do
   strip -R .comment $i || : &>/dev/null
done
%endif

# rename it to avoid conflict with timidy++
mv $RPM_BUILD_ROOT/%{_bindir}/timidity $RPM_BUILD_ROOT/%{_bindir}/ktimidity

# don't make these world-writeable
chmod go-w $RPM_BUILD_ROOT/%{_datadir}/apps/kscd/*

cd $RPM_BUILD_ROOT/%{_docdir}/HTML/en
for i in *; do
   rm -f $i/common
   ln -sf ../common $i
done

# move desktop files back
pushd $RPM_BUILD_ROOT%{_datadir}/applnk
for i in `find . -name "More"`; do
   if /bin/ls $i/*.desktop >& /dev/null ; then
      pushd $i
      for j in *.desktop ; do
         grep "Hidden=true" $j >& /dev/null || mv -f $j ..
      done
      popd
   fi
done
popd

%if "%{desktop_file}" == "1"
mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications
desktop-file-install --vendor %{my_vendor} \
   --dir $RPM_BUILD_ROOT%{_datadir}/applications \
   --delete-original \
   --add-category "Application;AudioVideo;X-Red-Hat-Base" \
   --add-only-show-in KDE \
   $RPM_BUILD_ROOT%{_datadir}/applnk/Multimedia/kscd.desktop

desktop-file-install --vendor %{my_vendor} \
   --dir $RPM_BUILD_ROOT%{_datadir}/applications \
   --delete-original \
   --add-category "Application;AudioVideo;X-Red-Hat-Extra" \
   --add-only-show-in KDE \
   $RPM_BUILD_ROOT%{_datadir}/applnk/Multimedia/artsbuilder.desktop \
   $RPM_BUILD_ROOT%{_datadir}/applnk/Multimedia/artscontrol.desktop

desktop-file-install --vendor %{my_vendor} \
   --dir $RPM_BUILD_ROOT%{_datadir}/applications \
   --delete-original \
   --add-category "Application;AudioVideo;X-Red-Hat-Extra" \
   $RPM_BUILD_ROOT%{_datadir}/applnk/Multimedia/kmid.desktop \
   $RPM_BUILD_ROOT%{_datadir}/applnk/Multimedia/kmidi.desktop \
   $RPM_BUILD_ROOT%{_datadir}/applnk/Multimedia/timidity.desktop \
   $RPM_BUILD_ROOT%{_datadir}/applnk/Multimedia/kaboodle.desktop \
   $RPM_BUILD_ROOT%{_datadir}/applnk/Multimedia/noatun.desktop

%if %{koncd}
desktop-file-install --vendor %{my_vendor} \
   --dir $RPM_BUILD_ROOT%{_datadir}/applications \
   --delete-original \
   --add-category "Application;System;X-Red-Hat-Extra" \
   $RPM_BUILD_ROOT%{_datadir}/applnk/Multimedia/koncd.desktop
%endif

desktop-file-install --vendor %{my_vendor} \
   --dir $RPM_BUILD_ROOT%{_datadir}/applications \
   --delete-original \
   --add-category "Application;System;X-Red-Hat-Extra" \
   $RPM_BUILD_ROOT%{_datadir}/applnk/Multimedia/kaudiocreator.desktop \
   $RPM_BUILD_ROOT%{_datadir}/applnk/Multimedia/krec.desktop

desktop-file-install --vendor %{my_vendor} \
   --dir $RPM_BUILD_ROOT%{_datadir}/applications \
   --delete-original \
   --add-category "Application;AudioVideo;X-Red-Hat-Base" \
   --add-only-show-in KDE \
   --copy-generic-name-to-name \
   $RPM_BUILD_ROOT%{_datadir}/applnk/Multimedia/kmix.desktop

desktop-file-install --vendor %{my_vendor} \
   --dir $RPM_BUILD_ROOT%{_datadir}/applications \
   --delete-original \
   --add-category "X-KDE-Sound" \
   --add-only-show-in KDE \
   $RPM_BUILD_ROOT%{_datadir}/applnk/Settings/Sound/audiocd.desktop \
   $RPM_BUILD_ROOT%{_datadir}/applnk/.hidden/kmixcfg.desktop \

%endif

rm -f $RPM_BUILD_ROOT%{_datadir}/applnk/Multimedia/More/kaboodle.desktop

%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig

%clean
%if %{rpm_clean}
rm -rf $RPM_BUILD_ROOT
%endif

%files
%defattr(-,root,root)
%doc %{_docdir}/HTML/en/artsbuilder
%doc %{_docdir}/HTML/en/kaboodle
%doc %{_docdir}/HTML/en/kcontrol/kmixcfg
%doc %{_docdir}/HTML/en/kmid
%doc %{_docdir}/HTML/en/kmidi
%doc %{_docdir}/HTML/en/kmix
%doc %{_docdir}/HTML/en/krec
%doc %{_docdir}/HTML/en/kscd
%doc %{_docdir}/HTML/en/noatun

%{_libdir}/mcop/*
%{_libdir}/*.so*
%{_libdir}/*.la
%{_libdir}/kde3/*

%{_bindir}/*

%{_datadir}/apps/*
%{_datadir}/icons/*/*/*/*
%{_datadir}/mimelnk/*
%{_datadir}/services/*
%{_datadir}/servicetypes/*

%if %{desktop_file}
%{_datadir}/applications/*.desktop
%else
%{_datadir}/applnk/*
%endif

%files devel
%defattr(-,root,root)
%{_includedir}/*

%changelog
* Mon Sep 15 2003 Than Ngo <than@redhat.com> 6:3.1.4-0.9x.1
- 3.1.4

* Sun Jul 20 2003 Than Ngo <than@redhat.com> 6:3.1.3-0.9x.1
- 3.1.3
- dependencies for kmidi (bug #92218)
- fixed file list (bug #83911)

* Thu Apr  3 2003 Than Ngo <than@redhat.com> 6:3.1.1-0.9x.1
- 3.1.1 release for RHL 9

* Mon Feb 24 2003 Elliot Lee <sopwith@redhat.com>
- debuginfo rebuild

* Thu Feb 20 2003 Than Ngo <than@redhat.com> 6:3.1-3
- rebuid against gcc 3.2.2 to fix dependency in la file

* Thu Feb 13 2003 Thomas Woerner <twoerner@redhat.com> 6:3.1-2
- fixed arts bug #82750, requires rebuild of kdemultimedia
- fixed reqs

* Tue Jan 28 2003 Than Ngo <than@redhat.com> 6:3.1-1
- 3.1 release

* Mon Jan 27 2003 Than Ngo <than@redhat.com> 6:3.1-0.7
- rc7
- cleanup specfile

* Thu Jan 23 2003 Tim Powers <timp@redhat.com> 6:3.1-0.6
- rebuild

* Mon Jan 13 2003 Thomas Woerner <twoerner@redhat.com> 3.1-0.5
- rc6
- fixed epoch for devel package
- no global cddb directory anymore
- removed size_t check
- exclude ia64

* Tue Jan 07 2003 Elliot Lee <sopwith@redhat.com> 3.1-0.4
- Don't exclude Alpha
- Instead of turning off detection of unpackaged files/missing doc files,
  fix the problems.

* Wed Nov 27 2002 Than Ngo <than@redhat.com> 3.1-0.3
- get rid of sub packages

* Mon Nov 25 2002 Than Ngo <than@redhat.com> 3.1-0.2
- fix desktop file issue

* Sun Nov 24 2002 Than Ngo <than@redhat.com> 3.1-0.1
- update to 3.1 rc4
- adjust some patch files for 3.1
- get rid of mp3 support

* Tue Nov  6 2002 Than Ngo <than@redhat.com> 3.0.4-2
- add missing ktimidity
- cleaned up some rpm building problems

* Mon Oct 14 2002 Than Ngo <than@redhat.com> 3.0.4-1
- 3.0.4

* Sat Oct 05 2002 Than Ngo <than@redhat.com> 3.0.3-5
- added a patch file to fix Konquror crahes when mp3/mpg file is clicked (bug #72161,#74959,#74850)

* Wed Sep 11 2002 Than Ngo than@redhat.com> 3.0.3-4.1
- cleanup specfile

* Thu Aug 29 2002 Than Ngo than@redhat.com> 3.0.3-4
- fixed category issue

* Tue Aug 27 2002 Phil Knirsch <pknirsch@redhat.com> 3.0.3-3
- Removed all mp3 related code

* Fri Aug 23 2002 Phil Knirsch <pknirsch@redhat.com> 3.0.3-2
- Disable parallel build as it is currently broken

* Mon Aug 12 2002 Than Ngo <than@redhat.com> 3.0.3-1
- 3.0.3
- build using gcc 3.2-0.3

* Thu Aug  8 2002 Than Ngo <than@redhat.com> 3.0.2-4
- desktop file issues

* Mon Jul 22 2002 Tim Powers <timp@redhat.com> 3.0.2-3
- rebuild using gcc-3.2-0.1

* Sat Jul 20 2002 Than Ngo <than@redhat.com> 3.0.2-2
- fix desktop files issue

* Wed Jul 10 2002 Than Ngo <than@redhat.com> 3.0.2-1
- 3.0.2
- use desktop-file-install

* Thu Jun 06 2002 Than Ngo <than@redhat.com> 3.0.1-3
- rebuild

* Thu May 23 2002 Tim Powers <timp@redhat.com>
- automated rebuild

* Fri May 10 2002 Bernhard Rosenkraenzer <bero@redhat.com> 3.0.1-1
- 3.0.1

* Wed Apr 17 2002 Bernhard Rosenkraenzer <bero@redhat.com> 3.0.0-3
- Make sure we link to the just built libraries instead of libs in the
  build environment from older releases

* Tue Apr 16 2002 Bernhard Rosenkraenzer <bero@redhat.com> 3.0.0-2
- Update ABI
- Add cdrecord/mkisofs requirements for KOnCD (#63606)
- Tell koncd where to find cdrecord and mkisofs (#63604)

* Wed Mar 27 2002 Bernhard Rosenkraenzer <bero@redhat.com> 3.0.0-1
- 3.0.0 final

* Thu Mar 21 2002 Bernhard Rosenkraenzer <bero@redhat.com> 3.0.0-0.cvs20020321.1
- Adapt spec file to recent changes in base

* Thu Mar  7 2002 Bernhard Rosenkraenzer <bero@redhat.com> 3.0.0-0.cvs20020307.1
- Update
- Rename subpackages

* Fri Feb  1 2002 Tim Powers <timp@redhat.com>
- kdemultimedia-devel shouldn't obsolete itself
- temporarily ExcludeArch ia64

* Mon Aug  6 2001 Than Ngo <than@redhat.com> 2.2-1
- update to 2.2 release

* Fri Aug  3 2001 Than Ngo <than@redhat.com> 2.2-0.cvs20010803.1
- update
- fix bug #24132
- get rid of aktion

* Sun Jul 22 2001 Bernhard Rosenkraenzer <bero@redhat.com> 2.2-0.cvs20010722.1
- Update
- move devel files to a separate package
- Add BuildPrereqs (#44914)

* Wed Feb 21 2001 Bernhard Rosenkraenzer <bero@redhat.com>
- 2.1-respin

* Tue Feb 20 2001 Bernhard Rosenkraenzer <bero@redhat.com>
- 2.1

* Tue Feb 13 2001 Bernhard Rosenkraenzer <bero@redhat.com>
- Remove copyrighted midi files (#26431)
- Use a real file list rather than find/sed (#26565)
- Fix build with current glibc

* Thu Feb  1 2001 Bernhard Rosenkraenzer <bero@redhat.com>
- Replace absolute symlinks with relative ones (#24794)
- Don't use more than 2 CPUs at build time to shut up asok

* Mon Jan 22 2001 Bernhard Rosenkraenzer <bero@redhat.com>
- Update

* Mon Jan  1 2001 Bernhard Rosenkraenzer <bero@redhat.com>
- Update
- Don't optimize on sparc, compiler breakage

* Wed Dec 20 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- Update to CVS
- re-exclude ia64, the compiler can't handle this package

* Sun Oct 22 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- 2.0 final

* Tue Oct  3 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- 2.0

* Thu Aug 24 2000 Than Ngo <than@redhat.com>
- update kdemultimedia-1.93
- fix to rebuilt with gcc-2.96

* Mon Aug  7 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- new version

* Wed Jul 19 2000 Than Ngo <than@redhat.de>
- fix to build against gcc-2.96-40 on sparc, alpha
- disable motif

* Thu Jul 13 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- SMPify
- don't hardcode QTDIR

* Tue Jul 11 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- use gcc 2.96
- new snapshot

* Sun Jul  2 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- use kernelcc
- new snapshot

* Fri Jun 23 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- Obsoletes: aktion (it's included now)

* Wed Jun 21 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- new snapshot
- ExcludeArch ia64 for now

* Sat Apr  8 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- 2.0 snapshot

* Tue Feb 29 2000 Preston Brown <pbrown@redhat.com>
- fix localkscd patch, broken since 6.1 (#9404).

* Fri Feb  4 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- Remove (world!) write permissions to %{prefix}/share/apps/kscd/cddb/*
- fix description

* Thu Feb  3 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- Change the kmix error message (Bug #9065)
- Fix kmidi behavior when trying to play an empty playlist (Bug #8843)
- Fix compilation with kernel 2.3.x headers

* Sat Jan  8 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- current version from KDE_1_1_BRANCH
- work around make install-strip breakage
- Rebuild for 6.2

* Sat Sep 25 1999 Preston Brown <pbrown@redhat.com>
- patched kscd to use local user directory for cddb entries

* Fri Sep 24 1999 Preston Brown <pbrown@redhat.com>
- mark doc files as such

* Thu Sep 09 1999 Preston Brown <pbrown@redhat.com>
- 1.1.2 release.

* Mon Jun 14 1999 Preston Brown <pbrown@redhat.com>
- snapshot, includes kde 1.1.1 + fixes

* Mon Apr 19 1999 Preston Brown <pbrown@redhat.com>
- last snapshot before release

* Tue Apr 13 1999 Preston Brown <pbrown@redhat.com>
- snapshot from today fixed kmid freeze issues

* Mon Apr 12 1999 Preston Brown <pbrown@redhat.com>
- latest stable snapshot

* Wed Feb 24 1999 Preston Brown <pbrown@redhat.com>
- Injected new description and group.

* Mon Feb 08 1999 Preston Brown <pbrown@redhat.com>
- upgraded to KDE 1.1 final.

* Sat Feb 06 1999 Preston Brown <pbrown@redhat.com>
- complies w/new RPM, newer libstdc++

* Wed Jan 06 1999 Preston Brown <pbrown@redhat.com>
- re-merged in updates from Duncan Haldane