Accepting request 1144929 from multimedia:libs
OBS-URL: https://build.opensuse.org/request/show/1144929 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/taglib?expand=0&rev=63
This commit is contained in:
commit
ba1dff5c1f
@ -1,2 +1,2 @@
|
||||
libtag1
|
||||
libtag_c0
|
||||
libtag2
|
||||
libtag_c2
|
||||
|
BIN
taglib-1.13.1.tar.gz
(Stored with Git LFS)
BIN
taglib-1.13.1.tar.gz
(Stored with Git LFS)
Binary file not shown.
3
taglib-2.0.tar.gz
Normal file
3
taglib-2.0.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:e36ea877a6370810b97d84cf8f72b1e4ed205149ab3ac8232d44c850f38a2859
|
||||
size 1429934
|
13
taglib-utf8cpp-include.patch
Normal file
13
taglib-utf8cpp-include.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff --git a/taglib/toolkit/tstring.cpp b/taglib/toolkit/tstring.cpp
|
||||
index f19a675..04181e5 100644
|
||||
--- a/taglib/toolkit/tstring.cpp
|
||||
+++ b/taglib/toolkit/tstring.cpp
|
||||
@@ -28,7 +28,7 @@
|
||||
#include <cerrno>
|
||||
#include <climits>
|
||||
#include <iostream>
|
||||
-#include <utf8.h>
|
||||
+#include <utf8cpp/utf8.h>
|
||||
|
||||
#include "tdebug.h"
|
||||
#include "tstringlist.h"
|
139
taglib.changes
139
taglib.changes
@ -1,3 +1,135 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 24 19:23:10 UTC 2024 - Jonas Kvinge <jonaski@opensuse.org>
|
||||
|
||||
- Update to version 2.0:
|
||||
* New major version, binary incompatible, but source-compatible with the
|
||||
latest 1.x release if no deprecated features are used.
|
||||
* Requires a C++17 compiler and uses features of C++17.
|
||||
* Major code cleanup, fixed warnings issued by compilers and static analyzers.
|
||||
* Made methods virtual which should have been virtual but could not be
|
||||
changed to keep binary compatibility, remove related workarounds.
|
||||
* Removed deprecated functions:
|
||||
- APE::Item::Item(const String &, const String &)
|
||||
- APE::Item::toStringList(): Use values()
|
||||
- APE::Item::value(): Use binaryData()
|
||||
- ASF::Properties::setLength()
|
||||
- ByteVector::checksum()
|
||||
- ByteVector::isNull(): Use isEmpty()
|
||||
- ByteVector::null
|
||||
- FLAC::File::setID3v2FrameFactory()
|
||||
- FLAC::File::streamInfoData()
|
||||
- FLAC::File::streamLength()
|
||||
- FLAC::Properties::Properties(File *, ReadStyle)
|
||||
- FLAC::Properties::sampleWidth(): Use bitsPerSample()
|
||||
- File::isReadable(): Use system functions
|
||||
- File::isWritable(): Use system functions
|
||||
- FileName::str()
|
||||
- FileRef::create(): Use constructor
|
||||
- MP4::Tag::itemListMap(): Use itemMap()
|
||||
- MPC::File::remove(): Use strip()
|
||||
- MPC::Properties::Properties(const ByteVector &, long, ReadStyle)
|
||||
- MPEG::File::save(int, ...): Use overload
|
||||
- MPEG::File::setID3v2FrameFactory(): Use constructor
|
||||
- MPEG::ID3v2::Frame::Header::Header(const ByteVector &, bool)
|
||||
- MPEG::ID3v2::Frame::Header::frameAlterPreservation(): Use
|
||||
fileAlterPreservation()
|
||||
- MPEG::ID3v2::Frame::Header::setData(const ByteVector &, bool)
|
||||
- MPEG::ID3v2::Frame::Header::size(unsigned int): Use size()
|
||||
- MPEG::ID3v2::Frame::Header::unsycronisation(): use unsynchronisation()
|
||||
- MPEG::ID3v2::Frame::checkEncoding(const StringList &, String::Type): Use
|
||||
checkTextEncoding(const StringList &, String::Type)
|
||||
- MPEG::ID3v2::Frame::headerSize(): Use Header::size()
|
||||
- MPEG::ID3v2::Frame::headerSize(unsigned int): Use
|
||||
Header::size(unsigned int)
|
||||
- MPEG::ID3v2::FrameFactory::createFrame(const ByteVector &, bool)
|
||||
- MPEG::ID3v2::FrameFactory::createFrame(const ByteVector &, unsigned int):
|
||||
Use createFrame(const ByteVector &, const Header *)
|
||||
- MPEG::ID3v2::RelativeVolumeFrame::channelType()
|
||||
- MPEG::ID3v2::RelativeVolumeFrame::peakVolume(): Use peakVolume(ChannelType)
|
||||
- MPEG::ID3v2::RelativeVolumeFrame::setChannelType()
|
||||
- MPEG::ID3v2::RelativeVolumeFrame::setPeakVolume(const PeakVolume &): Use
|
||||
setPeakVolume(const PeakVolume &, ChannelType)
|
||||
- MPEG::ID3v2::RelativeVolumeFrame::setVolumeAdjustment(float): Use
|
||||
setVolumeAdjustment(float, ChannelType)
|
||||
- MPEG::ID3v2::RelativeVolumeFrame::setVolumeAdjustmentIndex(short): Use
|
||||
setVolumeAdjustmentIndex(short, ChannelType)
|
||||
- MPEG::ID3v2::RelativeVolumeFrame::volumeAdjustment(): Use
|
||||
volumeAdjustment(ChannelType)
|
||||
- MPEG::ID3v2::RelativeVolumeFrame::volumeAdjustmentIndex(): Use
|
||||
volumeAdjustmentIndex(ChannelType)
|
||||
- MPEG::ID3v2::Tag::footer()
|
||||
- MPEG::ID3v2::Tag::render(int): Use render(Version)
|
||||
- MPEG::XingHeader::xingHeaderOffset()
|
||||
- Ogg::Page::getCopyWithNewPageSequenceNumber()
|
||||
- Ogg::XiphComment::removeField(): Use removeFields()
|
||||
- PropertyMap::unsupportedData(): Returns now const reference, use
|
||||
addUnsupportedData() to add keys
|
||||
- RIFF::AIFF::Properties::Properties(const ByteVector &, ReadStyle)
|
||||
- RIFF::AIFF::Properties::Properties(const ByteVector &, int, ReadStyle)
|
||||
- RIFF::AIFF::Properties::sampleWidth(): Use bitsPerSample()
|
||||
- RIFF::WAV::File::save(TagTypes, bool, int): Use
|
||||
save(TagTypes, StripTags, Version)
|
||||
- RIFF::WAV::File::tag(): Returns now a TagUnion, use ID3v2Tag() to get an
|
||||
ID3v2::Tag
|
||||
- String::isNull(): Use isEmpty()
|
||||
- String::null
|
||||
- TrueAudio::File::setID3v2FrameFactory(): Use constructor
|
||||
- WavPack::Properties::Properties(const ByteVector &, long, ReadStyle)
|
||||
* Made methods const: Frame::Header::size(), Frame::headerSize(),
|
||||
MP4::Atom::findall(), MP4::Atoms::find(), MP4::Atoms::path().
|
||||
* Made classes non-virtual: APE::Footer, APE::Item, ASF::Attribute,
|
||||
ASF::Picture, MP4::CoverArt, MP4::Item, ID3v2::ExtendedHeader, ID3v2::Footer,
|
||||
ID3v2::Header, MPEG::Header, MPEG::XingHeader, Ogg::Page, Ogg::PageHeader.
|
||||
* Removed type definitions in TagLib namespace: wchar, uchar, ushort, uint,
|
||||
ulong, ulonglong, wstring: Use the standard types.
|
||||
* Removed include file taglib_config.h and its defines TAGLIB_WITH_ASF,
|
||||
TAGLIB_WITH_MP4: They were always 1 since version 1.8.
|
||||
* Behavioral changes:
|
||||
- The basic tag methods (e.g. genre()) separate multiple values with " / "
|
||||
instead of " ".
|
||||
- The stream operator for String uses UTF-8 instead of ISO-8859-1 encoding.
|
||||
- MP4 property ORIGINALDATE is mapped to "----:com.apple.iTunes:ORIGINALDATE"
|
||||
instead of "----:com.apple.iTunes:originaldate".
|
||||
- MP4 property ENCODEDBY is mapped to "©enc" instead of "©too", which is now
|
||||
mapped to ENCODING.
|
||||
* Unified interface for complex properties like pictures.
|
||||
* Simplified the unified properties interface by providing its methods on
|
||||
FileRef.
|
||||
* C bindings: Support for properties (taglib_property_...) and complex
|
||||
properties like cover art (taglib_complex_property_...), memory I/O streams.
|
||||
* Support for Direct Stream Digital (DSD) stream files (DSF) and interchange
|
||||
file format (DSDIFF, DFF), ADTS (AAC) files.
|
||||
* The runtime version can be queried.
|
||||
* Additional utility functions ByteVector::fromUShort(),
|
||||
ByteVector::fromULongLong(), ByteVector::toULongLong(),
|
||||
ByteVector::toULongLong(), List::sort().
|
||||
* Fixed List::setAutoDelete() affecting implicitly shared copies.
|
||||
* Build system: Direct support for CMake, find_package(TagLib) exports target
|
||||
TagLib::tag.
|
||||
* Build system: Fixed PackageConfig to support both relative and absolute paths.
|
||||
* Build system: utf8cpp is no longer included, it can be provided via a system
|
||||
package or a Git submodule.
|
||||
* ASF: Support additional properties ARTISTWEBPAGE, ENCODING, ENCODINGTIME,
|
||||
FILEWEBPAGE, INITIALKEY, ORIGINALALBUM, ORIGINALARTIST, ORIGINALFILENAME,
|
||||
ORIGINALLYRICIST.
|
||||
* ID3v2: Fixed extensibility of FrameFactory, use it also for WAV and AIFF
|
||||
files.
|
||||
* MP4: Support additional properties OWNER, RELEASEDATE.
|
||||
* MP4: Introduced ItemFactory allowing clients to support new atom types.
|
||||
* MP4: Detect duration from mvhd atom if not present in mdhd atom.
|
||||
* MP4: Fixed type of hdvd atom to be integer instead of boolean.
|
||||
* MP4: Tolerate trailing garbage in M4A files.
|
||||
* MPC: Fixed content check in presence of an ID3v2 tag.
|
||||
* MPEG: Do not scan full file for ID3v2 tag when ReadStyle Fast is used.
|
||||
* RIFF: Support properties ALBUM, ARRANGER, ARTIST, ARTISTWEBPAGE, BPM,
|
||||
COMMENT, COMPOSER, COPYRIGHT, DATE, DISCSUBTITLE, ENCODEDBY, ENCODING,
|
||||
ENCODINGTIME, GENRE, ISRC, LABEL, LANGUAGE, LYRICIST, MEDIA, PERFORMER,
|
||||
RELEASECOUNTRY, REMIXER, TITLE, TRACKNUMBER.
|
||||
* WAV: Fixed crash with files having the "id3 " chunk as the only valid chunk.
|
||||
* Windows: Fixed support for files larger than 2GB.
|
||||
- Fix the compile error about utf8.h inclusion path:
|
||||
taglib-utf8cpp-include.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jul 12 14:20:57 UTC 2023 - Danilo Spinella <danilo.spinella@suse.com>
|
||||
|
||||
@ -36,7 +168,9 @@ Thu Nov 17 21:40:14 UTC 2022 - Jonas Kvinge <jonaski@opensuse.org>
|
||||
-------------------------------------------------------------------
|
||||
Mon May 9 19:05:54 UTC 2022 - Christophe Giboudeaux <christophe@krop.fr>
|
||||
|
||||
- Remove build rpath from executables (boo#1199058)
|
||||
- Remove build rpath from executables (boo#1199058, similar to
|
||||
bsc#1166467 which was fixed in SLE using -DCMAKE_SKIP_RPATH=ON
|
||||
instead of -DCMAKE_SKIP_BUILD_RPATH=ON)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 18 17:18:24 CET 2021 - tiwai@suse.de
|
||||
@ -168,7 +302,8 @@ Wed Dec 5 09:07:42 UTC 2018 - davejplater@gmail.com
|
||||
-------------------------------------------------------------------
|
||||
Tue Nov 13 22:29:57 UTC 2018 - Jonas Kvinge <jonas@jkvinge.net>
|
||||
|
||||
- Add patch to fix Ogg corruption:
|
||||
- Add patch to fix Ogg corruption (boo#1179817,
|
||||
gh#taglib/taglib#864):
|
||||
* taglib-fix-ogg.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
|
49
taglib.spec
49
taglib.spec
@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file
|
||||
#
|
||||
# Copyright (c) 2023 SUSE LLC
|
||||
# Copyright (c) 2024 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@ -27,7 +27,7 @@
|
||||
%bcond_with tests
|
||||
%endif
|
||||
Name: taglib%{psuffix}
|
||||
Version: 1.13.1
|
||||
Version: 2.0
|
||||
Release: 0
|
||||
Summary: Audio Meta-Data Library
|
||||
License: LGPL-2.1-or-later AND MPL-1.1
|
||||
@ -36,15 +36,17 @@ URL: https://taglib.github.io/
|
||||
Source0: https://taglib.github.io/releases/taglib-%{version}.tar.gz
|
||||
Source1: %{sname}.desktop
|
||||
Source100: baselibs.conf
|
||||
Patch1: taglib-utf8cpp-include.patch
|
||||
BuildRequires: cmake >= 2.8
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: cmake(utf8cpp)
|
||||
BuildRequires: pkgconfig(zlib)
|
||||
# NOTE: The tagreader and writer executables give different results when built with
|
||||
# an earlier taglib-1.8-ds-rusxmms patch. See bnc#814814
|
||||
Requires: libtag1 >= %{version}-%{release}
|
||||
Requires: libtag_c0 >= %{version}-%{release}
|
||||
Requires: libtag2 >= %{version}-%{release}
|
||||
Requires: libtag_c2 >= %{version}-%{release}
|
||||
%if %{with tests}
|
||||
BuildRequires: doxygen
|
||||
BuildRequires: ghostscript-fonts-std
|
||||
@ -62,25 +64,25 @@ TrueAudio, WAV, AIFF, MP4 and ASF files.
|
||||
This package contains built examples which manipulate tags from the
|
||||
command line.
|
||||
|
||||
%package -n libtag1
|
||||
%package -n libtag2
|
||||
Summary: Audio Meta-Data Library
|
||||
License: LGPL-2.1-or-later
|
||||
Group: System/Libraries
|
||||
Conflicts: taglib <= 1.6.3
|
||||
|
||||
%description -n libtag1
|
||||
%description -n libtag2
|
||||
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
|
||||
%package -n libtag_c2
|
||||
Summary: Audio Meta-Data Library
|
||||
License: LGPL-2.1-or-later
|
||||
Group: System/Libraries
|
||||
Conflicts: taglib <= 1.6.3
|
||||
|
||||
%description -n libtag_c0
|
||||
%description -n libtag_c2
|
||||
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
|
||||
@ -91,8 +93,8 @@ Summary: Development files for taglib
|
||||
License: LGPL-2.1-or-later
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: libstdc++-devel
|
||||
Requires: libtag1 >= %{version}-%{release}
|
||||
Requires: libtag_c0 >= %{version}-%{release}
|
||||
Requires: libtag2 >= %{version}-%{release}
|
||||
Requires: libtag_c2 >= %{version}-%{release}
|
||||
Requires: zlib-devel
|
||||
# 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.
|
||||
@ -113,12 +115,11 @@ This package contains the taglib API Documentation in HTML format.
|
||||
|
||||
%prep
|
||||
%setup -q -n %{sname}-%{version}
|
||||
%patch1 -p1
|
||||
|
||||
%build
|
||||
# The testing needs static libs too
|
||||
%cmake \
|
||||
-DWITH_ASF:BOOL=ON \
|
||||
-DWITH_MP4:BOOL=ON \
|
||||
-DCMAKE_SKIP_BUILD_RPATH=ON \
|
||||
%if %{with tests}
|
||||
-DBUILD_TESTS:BOOL=ON \
|
||||
@ -161,35 +162,37 @@ install -m755 build/examples/{framelist,strip-id3v1,tagreader,tagreader_c,tagwri
|
||||
%endif
|
||||
|
||||
%if !%{with tests}
|
||||
%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
|
||||
%post -n libtag2 -p /sbin/ldconfig
|
||||
%postun -n libtag2 -p /sbin/ldconfig
|
||||
%post -n libtag_c2 -p /sbin/ldconfig
|
||||
%postun -n libtag_c2 -p /sbin/ldconfig
|
||||
|
||||
%files
|
||||
%license COPYING.LGPL COPYING.MPL
|
||||
%{_bindir}/*
|
||||
%exclude %{_bindir}/taglib-config
|
||||
|
||||
%files -n libtag1
|
||||
%files -n libtag2
|
||||
%license COPYING.LGPL COPYING.MPL
|
||||
%{_libdir}/libtag.so.1
|
||||
%{_libdir}/libtag.so.1.*
|
||||
%{_libdir}/libtag.so.2
|
||||
%{_libdir}/libtag.so.2.*
|
||||
|
||||
%files -n libtag_c0
|
||||
%files -n libtag_c2
|
||||
%license COPYING.LGPL COPYING.MPL
|
||||
%{_libdir}/libtag_c.so.0
|
||||
%{_libdir}/libtag_c.so.0.*
|
||||
%{_libdir}/libtag_c.so.2
|
||||
%{_libdir}/libtag_c.so.2.*
|
||||
|
||||
%files -n libtag-devel
|
||||
%{_bindir}/taglib-config
|
||||
%{_includedir}/taglib/
|
||||
%{_libdir}/libtag*.so
|
||||
%{_libdir}/pkgconfig/*.pc
|
||||
%dir %{_libdir}/cmake/taglib
|
||||
%{_libdir}/cmake/taglib/*.cmake
|
||||
%else
|
||||
|
||||
%files -n libtag-doc
|
||||
%doc AUTHORS NEWS examples
|
||||
%doc AUTHORS CHANGELOG.md examples
|
||||
%{_docdir}/libtag-doc/html
|
||||
%{_datadir}/susehelp/
|
||||
%endif
|
||||
|
Loading…
Reference in New Issue
Block a user