diff options
author | V3n3RiX <venerix@koprulu.sector> | 2024-12-28 06:30:54 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2024-12-28 06:30:54 +0000 |
commit | 72fd2b48b7154274a1d2009cdaab54e7f49fb3aa (patch) | |
tree | 9c6ce981e8f924eb5f24e71e13c91b37aafb8616 /media-sound/easytag | |
parent | 721e451ec418e1712f6962404e111f0ebd487389 (diff) |
gentoo auto-resync : 28:12:2024 - 06:30:54
Diffstat (limited to 'media-sound/easytag')
-rw-r--r-- | media-sound/easytag/Manifest | 2 | ||||
-rw-r--r-- | media-sound/easytag/easytag-2.4.3-r7.ebuild | 85 | ||||
-rw-r--r-- | media-sound/easytag/files/easytag-2.4.3-fix-build-taglib2.patch | 202 |
3 files changed, 289 insertions, 0 deletions
diff --git a/media-sound/easytag/Manifest b/media-sound/easytag/Manifest index bfd86c65326a..606f01e14837 100644 --- a/media-sound/easytag/Manifest +++ b/media-sound/easytag/Manifest @@ -1,4 +1,6 @@ +AUX easytag-2.4.3-fix-build-taglib2.patch 6569 BLAKE2B a1486a91e418ca3701a4bd25c57979c07f5bf0fce69e2c4abeb72c1bf8654667cc64cc3d3920470aca2ae4ad7a37fbcb0bd8cb7ac53ed893c149ac923e940bdb SHA512 ad08cf0ed12ffecce4fe67eed05cb7850f984c7c5d66954d518f7cdb2ab0a3716d896b0fa01bd273fe92a5abe97f01d71eba17dabbae867501a7534c9150dbff AUX easytag-2.4.3-ogg-corruption.patch 7233 BLAKE2B e0123a9d195a85d80136fc831cdfe1a870346a2f0cf0213a53e0ef51bc82e72db390898df0c8d02ba8865c3571e5d2f8b8faafe0b3750b6cd123e3fe065cc65f SHA512 f25cedb0f09edf987317f395133195f115549503a6c02edfce7e49f1f24d2e5d01920c9b48f41addb2b632d68bb329cbdefc25aec4e56239daa4f7980d33bd10 DIST easytag-2.4.3.tar.xz 1381084 BLAKE2B 22358cd15e53a51f2786ad2a62e5d9eea78e9c8b8127d2820dbd5657d734a9a0e694a6d180ad730b87c8c236e3d3396c9ea4c651df4080d0f4b4dc0e212b945c SHA512 ef596341772ce7da3b7feec2c82a20ca29d25c2496074c469be5b8dd75d2b2718e689310e0d61de53bc29a4f54ce9f853a336e1a35076046fd107afd28699087 EBUILD easytag-2.4.3-r6.ebuild 1971 BLAKE2B cc41ea0cdb02a1cf520f4cdf669189c8e693c3c4f65c6954534d43a0c941e76e9b48989c96a273ed5c320aaa2b9b0e435a086606bde7036dda925308ad8ece45 SHA512 835083104b3ada76d5b62ca026407c7f35210e0ccd8980f84475446740915c98934b240ea99877bfa48365ad46ee77f83eef1b6952560ff575d765e3d4634a7c +EBUILD easytag-2.4.3-r7.ebuild 2021 BLAKE2B 768aad5ef327739c7115f11daa009368bc84a211c3ee09d8e53d7edcc6bab94cc4f7692ecf7379cf3511e4e90f00de9a07851d51e68c43965c59c6a8ccae0f3c SHA512 45eb6fc7bf802c40a7d7eaccbcb532ae9b67a11931666c00620af7db4d1f504baf1270772b6d895490151e4fbb12e9cc8adae9ca375f120232a34603638dc1b5 MISC metadata.xml 422 BLAKE2B d1415eb185e22013f0567c5553c886558d812f8edaa2c817f684d6f0c1bb04d8a7fa8fd63abf929d07e9d9f181d0dd64af3c2c2c77f5769e3a718530598d9529 SHA512 438a22ec60b4e7b2061fd6d7645b4a31b537c06fec22968b86496e85f98306227ff6025eb2afd8a0dbaa57929aa78b3f7bc4631f9232f1204e8efa3d6f16e238 diff --git a/media-sound/easytag/easytag-2.4.3-r7.ebuild b/media-sound/easytag/easytag-2.4.3-r7.ebuild new file mode 100644 index 000000000000..594ad5101f03 --- /dev/null +++ b/media-sound/easytag/easytag-2.4.3-r7.ebuild @@ -0,0 +1,85 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit gnome2 + +DESCRIPTION="GTK+ utility for editing MP2, MP3, MP4, FLAC, Ogg and other media tags" +HOMEPAGE="https://wiki.gnome.org/Apps/EasyTAG" + +LICENSE="GPL-2 GPL-2+ LGPL-2 LGPL-2+ LGPL-2.1+" +SLOT="0" +KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~ppc-macos" +IUSE="flac mp3 mp4 opus speex test vorbis wavpack" +# Disable nautilus support until https://gitlab.gnome.org/GNOME/easytag/-/issues/78 +# is solved +RESTRICT="!test? ( test )" +REQUIRED_USE=" + opus? ( vorbis ) + speex? ( vorbis )" + +RDEPEND=" + >=dev-libs/glib-2.38:2 + || ( + media-libs/libcanberra-gtk3 + media-libs/libcanberra[gtk3(-)] + ) + >=x11-libs/gtk+-3.10:3 + flac? ( >=media-libs/flac-1.3:= ) + mp3? ( + >=media-libs/id3lib-3.8.3-r8 + >=media-libs/libid3tag-0.15.1b-r4:= + ) + mp4? ( media-libs/taglib:=[mp4(+)] ) + opus? ( + >=media-libs/opus-1.1 + >=media-libs/opusfile-0.4 + ) + speex? ( >=media-libs/speex-1.2_rc1 ) + vorbis? ( + >=media-libs/libogg-1.3.1 + >=media-libs/libvorbis-1.3.4 + ) + wavpack? ( >=media-sound/wavpack-4.70 )" +DEPEND="${RDEPEND}" +BDEPEND=" + app-text/docbook-xml-dtd:4.4 + app-text/yelp-tools + dev-util/glib-utils + dev-libs/libxml2 + dev-libs/libxslt + >=dev-util/intltool-0.50 + >=sys-devel/gettext-0.18.3.2 + virtual/pkgconfig + test? ( + dev-libs/appstream-glib + >=dev-util/desktop-file-utils-0.22 + )" + +PATCHES=( + "${FILESDIR}"/${P}-ogg-corruption.patch + "${FILESDIR}"/${P}-fix-build-taglib2.patch +) + +src_configure() { + gnome2_src_configure \ + --disable-Werror \ + --disable-nautilus-actions \ + $(use_enable test appdata-validate) \ + $(use_enable test tests) \ + $(use_enable mp3) \ + $(use_enable mp3 id3v23) \ + $(use_enable vorbis ogg) \ + $(use_enable opus) \ + $(use_enable speex) \ + $(use_enable flac) \ + $(use_enable mp4) \ + $(use_enable wavpack) +} + +src_install() { + gnome2_src_install + # https://gitlab.gnome.org/GNOME/easytag/-/issues/82 + mv "${ED}"/usr/share/{appdata,metainfo} || die +} diff --git a/media-sound/easytag/files/easytag-2.4.3-fix-build-taglib2.patch b/media-sound/easytag/files/easytag-2.4.3-fix-build-taglib2.patch new file mode 100644 index 000000000000..d27e5cdc9fe7 --- /dev/null +++ b/media-sound/easytag/files/easytag-2.4.3-fix-build-taglib2.patch @@ -0,0 +1,202 @@ +from https://gitlab.gnome.org/GNOME/easytag/-/merge_requests/16.patch +compatibility added with taglib1 + +diff '--color=auto' -uNr a/src/tags/gio_wrapper.cc b/src/tags/gio_wrapper.cc +--- a/src/tags/gio_wrapper.cc ++++ b/src/tags/gio_wrapper.cc +@@ -47,11 +47,15 @@ + } + + TagLib::ByteVector ++#if (TAGLIB_MAJOR_VERSION == 2) ++GIO_InputStream::readBlock (ulong len) ++#else + GIO_InputStream::readBlock (TagLib::ulong len) ++#endif + { + if (error) + { +- return TagLib::ByteVector::null; ++ return TagLib::ByteVector(); + } + + TagLib::ByteVector rv (len, 0); +@@ -69,15 +73,25 @@ + } + + void ++#if (TAGLIB_MAJOR_VERSION == 2) ++GIO_InputStream::insert (TagLib::ByteVector const &data, ++ TagLib::offset_t start, ++ size_t replace) ++#else + GIO_InputStream::insert (TagLib::ByteVector const &data, + TagLib::ulong start, + TagLib::ulong replace) ++#endif + { + g_warning ("%s", "Trying to write to read-only file!"); + } + + void ++#if (TAGLIB_MAJOR_VERSION == 2) ++GIO_InputStream::removeBlock (TagLib::offset_t start, size_t len) ++#else + GIO_InputStream::removeBlock (TagLib::ulong start, TagLib::ulong len) ++#endif + { + g_warning ("%s", "Trying to write to read-only file!"); + } +@@ -200,11 +214,15 @@ + } + + TagLib::ByteVector ++#if (TAGLIB_MAJOR_VERSION == 2) ++GIO_IOStream::readBlock (ulong len) ++#else + GIO_IOStream::readBlock (TagLib::ulong len) ++#endif + { + if (error) + { +- return TagLib::ByteVector::null; ++ return TagLib::ByteVector(); + } + + gsize bytes = 0; +@@ -238,9 +256,15 @@ + } + + void ++#if (TAGLIB_MAJOR_VERSION == 2) ++GIO_IOStream::insert (TagLib::ByteVector const &data, ++ TagLib::offset_t start, ++ size_t replace) ++#else + GIO_IOStream::insert (TagLib::ByteVector const &data, + TagLib::ulong start, + TagLib::ulong replace) ++#endif + { + if (error) + { +@@ -351,9 +375,15 @@ + } + + void ++#if (TAGLIB_MAJOR_VERSION == 2) ++GIO_IOStream::removeBlock (TagLib::offset_t start, size_t len) ++{ ++ if (start + len >= (ulong)length ()) ++#else + GIO_IOStream::removeBlock (TagLib::ulong start, TagLib::ulong len) + { + if (start + len >= (TagLib::ulong)length ()) ++#endif + { + truncate (start); + return; +diff '--color=auto' -uNr a/src/tags/gio_wrapper.h b/src/tags/gio_wrapper.h +--- a/src/tags/gio_wrapper.h ++++ b/src/tags/gio_wrapper.h +@@ -33,10 +33,17 @@ + GIO_InputStream (GFile *file_); + virtual ~GIO_InputStream (); + virtual TagLib::FileName name () const; ++#if (TAGLIB_MAJOR_VERSION == 2) ++ virtual TagLib::ByteVector readBlock (ulong length); ++ virtual void writeBlock (TagLib::ByteVector const &data); ++ virtual void insert (TagLib::ByteVector const &data, TagLib::offset_t start = 0, size_t replace = 0); ++ virtual void removeBlock (TagLib::offset_t start = 0, size_t length = 0); ++#else + virtual TagLib::ByteVector readBlock (TagLib::ulong length); + virtual void writeBlock (TagLib::ByteVector const &data); + virtual void insert (TagLib::ByteVector const &data, TagLib::ulong start = 0, TagLib::ulong replace = 0); + virtual void removeBlock (TagLib::ulong start = 0, TagLib::ulong length = 0); ++#endif + virtual bool readOnly () const; + virtual bool isOpen () const; + virtual void seek (long int offset, TagLib::IOStream::Position p = TagLib::IOStream::Beginning); +@@ -61,10 +68,17 @@ + GIO_IOStream (GFile *file_); + virtual ~GIO_IOStream (); + virtual TagLib::FileName name () const; ++#if (TAGLIB_MAJOR_VERSION == 2) ++ virtual TagLib::ByteVector readBlock (ulong length); ++ virtual void writeBlock (TagLib::ByteVector const &data); ++ virtual void insert (TagLib::ByteVector const &data, TagLib::offset_t start = 0, size_t replace = 0); ++ virtual void removeBlock (TagLib::offset_t start = 0, size_t len = 0); ++#else + virtual TagLib::ByteVector readBlock (TagLib::ulong length); + virtual void writeBlock (TagLib::ByteVector const &data); + virtual void insert (TagLib::ByteVector const &data, TagLib::ulong start = 0, TagLib::ulong replace = 0); + virtual void removeBlock (TagLib::ulong start = 0, TagLib::ulong len = 0); ++#endif + virtual bool readOnly () const; + virtual bool isOpen () const; + virtual void seek (long int offset, TagLib::IOStream::Position p = TagLib::IOStream::Beginning); +diff '--color=auto' -uNr a/src/tags/mp4_header.cc b/src/tags/mp4_header.cc +--- a/src/tags/mp4_header.cc ++++ b/src/tags/mp4_header.cc +@@ -105,7 +105,7 @@ + ETFileInfo->bitrate = properties->bitrate (); + ETFileInfo->samplerate = properties->sampleRate (); + ETFileInfo->mode = properties->channels (); +- ETFileInfo->duration = properties->length (); ++ ETFileInfo->duration = properties->lengthInSeconds (); + + return TRUE; + } +diff '--color=auto' -uNr a/src/tags/mp4_tag.cc b/src/tags/mp4_tag.cc +--- a/src/tags/mp4_tag.cc ++++ b/src/tags/mp4_tag.cc +@@ -222,7 +222,7 @@ + FileTag->encoded_by = g_strdup (encodedbys.front ().toCString (true)); + } + +- const TagLib::MP4::ItemListMap &extra_items = tag->itemListMap (); ++ const TagLib::MP4::ItemMap &extra_items = tag->itemMap (); + + /* Album Artist */ + #if (TAGLIB_MAJOR_VERSION == 1) && (TAGLIB_MINOR_VERSION < 10) +@@ -437,25 +437,12 @@ + fields.insert ("ENCODEDBY", string); + } + +- TagLib::MP4::ItemListMap &extra_items = tag->itemListMap (); +- + /* Album artist. */ + if (!et_str_empty (FileTag->album_artist)) + { + TagLib::String string (FileTag->album_artist, TagLib::String::UTF8); +-#if (TAGLIB_MAJOR_VERSION == 1) && (TAGLIB_MINOR_VERSION < 10) +- /* No "ALBUMARTIST" support in TagLib until 1.10; use atom directly. */ +- extra_items.insert ("aART", TagLib::MP4::Item (string)); +-#else + fields.insert ("ALBUMARTIST", string); +-#endif + } +-#if (TAGLIB_MAJOR_VERSION == 1) && (TAGLIB_MINOR_VERSION < 10) +- else +- { +- extra_items.erase ("aART"); +- } +-#endif + + /*********** + * Picture * +@@ -491,12 +478,12 @@ + TagLib::MP4::CoverArt art (f, TagLib::ByteVector((char *)data, + data_size)); + +- extra_items.insert ("covr", ++ tag->setItem("covr", + TagLib::MP4::Item (TagLib::MP4::CoverArtList ().append (art))); + } + else + { +- extra_items.erase ("covr"); ++ tag->removeItem("covr"); + } + + tag->setProperties (fields); |