File taglib.spec of Package taglib

#
# spec file for package taglib
#
# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#


Name:           taglib
Version:        1.7.2
Release:        0
Summary:        Audio Meta-Data Library
License:        LGPL-2.1+ ; MPL-1.1
Group:          System/Libraries
Url:            http://ktown.kde.org/~wheeler/taglib/
# http://ktown.kde.org/~wheeler/files/src/taglib-1.7.tar.gz
Source0:        %{name}-%{version}.tar.bz2
Source1:        %{name}.desktop
Source100:      baselibs.conf
Patch1:         taglib-1.6-ds-rusxmms.patch
Patch2:         taglib-noansiflags.patch
Patch3:         taglib-1.7.2-doxygen.patch		
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildRequires:  cmake
BuildRequires:  doxygen
BuildRequires:  fdupes
BuildRequires:  gcc-c++
BuildRequires:  graphviz-gnome
BuildRequires:  libcppunit-devel
BuildRequires:  pkg-config
%if 0%{?suse_version}
BuildRequires:  update-desktop-files
%endif
BuildRequires:  librcc-devel
BuildRequires:  zlib-devel
Requires:       libtag1 = %{version}
Requires:       libtag_c0 = %{version}

%description
TagLib is a library for reading and editing the meta-data of several popular
audio formats. Currently it supports both ID3v1 and ID3v2 for MP3 files, Ogg
Vorbis comments and ID3 tags and Vorbis comments in FLAC, MPC, Speex, WavPack
TrueAudio, WAV, AIFF, MP4 and ASF files.

%package -n libtag1
Summary:        Audio Meta-Data Library
License:        LGPL-2.1+
Group:          System/Libraries
# Without this the old taglib package containing the libraries isn't removed when this package is installed.
# The only alternative is for the libraries to Require: taglib version-release, badness 440
Conflicts:      taglib <= 1.6.3

%description -n libtag1
TagLib is a library for reading and editing the meta-data of several popular
audio formats. Currently it supports both ID3v1 and ID3v2 for MP3 files, Ogg
Vorbis comments and ID3 tags and Vorbis comments in FLAC, MPC, Speex, WavPack
TrueAudio, WAV, AIFF, MP4 and ASF files.

%package -n libtag_c0
Summary:        Audio Meta-Data Library
License:        LGPL-2.1+
Group:          System/Libraries
# Without this the old taglib package containing the libraries isn't removed when this package is installed.
# The only alternative is for the libraries to Require: taglib version-release, badness 440
Conflicts:      taglib <= 1.6.3

%description -n libtag_c0
TagLib is a library for reading and editing the meta-data of several popular
audio formats. Currently it supports both ID3v1 and ID3v2 for MP3 files, Ogg
Vorbis comments and ID3 tags and Vorbis comments in FLAC, MPC, Speex, WavPack
TrueAudio, WAV, AIFF, MP4 and ASF files.

%package -n libtag-devel
Summary:        Development files for taglib
License:        LGPL-2.1+
Group:          Development/Libraries/C and C++
Requires:       libstdc++-devel
Requires:       libtag1 = %{version}-%{release}
Requires:       libtag_c0 = %{version}-%{release}
# taglib-devel was last used in openSUSE 11.4 (taglib-devel-1.6.2)
# The last taglib-devel used was version 1.6.3 from multimedia:libs.
Provides:       taglib-devel = %{version}
Obsoletes:      taglib-devel <= 1.6.3

%description -n libtag-devel
This package contains development files for taglib.

%prep
%setup -q
%patch1 -p1
%patch2
%patch3 -p1
%build
mkdir build
cd build
export CXXFLAGS="%{optflags} -D_GNU_SOURCE"
export CFLAGS="%{optflags} -D_GNU_SOURCE"
_libsuffix=$(echo %{_lib} | cut -b4-)
cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} -DBUILD_TESTS:BOOL=ON -DLIB_SUFFIX=$_libsuffix -DWITH_ASF:BOOL=ON -DWITH_MP4:BOOL=ON ..
make %{?_smp_mflags} VERBOSE=1
cd ..

doxygen -u
doxygen

%install
cd build
%makeinstall
cd ..

# install susehelp file
mkdir -p %{buildroot}%{_datadir}/susehelp/meta/Development/Libraries/
install -pm 0644 %{SOURCE1} %{buildroot}%{_datadir}/susehelp/meta/Development/Libraries/

%if 0%{?suse_version}
%suse_update_desktop_file %{buildroot}%{_datadir}/susehelp/meta/Development/Libraries/%{name}.desktop
%endif

# Documentation
mkdir -p %{buildroot}%{_defaultdocdir}/libtag-devel
rm -f examples/CMake*
cp -a AUTHORS COPYING.LGPL COPYING.MPL NEWS doc/html/ examples/ %{buildroot}%{_defaultdocdir}/libtag-devel/

%fdupes -s %{buildroot}

echo <<EOF >README.taglib
This package only acts as a placeholder until all packages that use taglib
have upgraded to the new package names libtag1 and libtag_c0.
EOF

%check
# check the library
#pushd tests
#make check
#popd

%clean
%{?buildroot:%__rm -rf "%{buildroot}"}

%post -n libtag1 -p /sbin/ldconfig

%postun -n libtag1 -p /sbin/ldconfig

%post -n libtag_c0 -p /sbin/ldconfig

%postun -n libtag_c0 -p /sbin/ldconfig

%files -n libtag1
%defattr(-,root,root,-)
%{_libdir}/libtag.so.1
%{_libdir}/libtag.so.1.*

%files -n libtag_c0
%defattr(-,root,root,-)
%{_libdir}/libtag_c.so.0
%{_libdir}/libtag_c.so.0.*

%files -n libtag-devel
%defattr(-,root,root,-)
%doc %{_defaultdocdir}/libtag-devel
%{_bindir}/taglib-config
%{_includedir}/taglib/
%{_libdir}/libtag*.so
%{_libdir}/pkgconfig/*.pc
%{_datadir}/susehelp/

%files
%defattr(-,root,root,-)
%doc README.taglib

%changelog