media-sound/gogglesmm: drop 1.2.1-r2, 1.2.1-r3

Closes: https://bugs.gentoo.org/949038
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
This commit is contained in:
Andreas Sturmlechner
2025-03-10 00:06:25 +01:00
parent 6ec39d1631
commit 54a3d10fcf
5 changed files with 0 additions and 555 deletions

View File

@@ -1,2 +1 @@
DIST gogglesmm-1.2.1.tar.gz 3015072 BLAKE2B 6a33ba6b678bc23e449898e4f492064301ca9c37239d713fa5ccb857d51bb4c4cf5dc1d4576f2f6dc745eaff607f4400e5600f45c4cbdde8c43cee5ca1fc34f4 SHA512 c165ddde463afcf863b74f00dfa1566077007f51617fa00a95dfcdeeab49da9ee87406f6bdc7779c597002d1e587886c7992e9e892ce4988f3bb14f015336547
DIST gogglesmm-1.2.5.tar.gz 3174015 BLAKE2B d3d47f51d69a911989c17edd77763d43cee3354837b56b166881d34a3d8367feca5a7219922392e3ec2570e8df10ebdc277fdcd527694ccd29c5038a345558f7 SHA512 2e05695ac7e4a776cd7a4fb14cb096e3543f73bba60c8c820803358e0342002d760d1acc77efc959459968313aaec23d446d2b14e0435f88f4f9a2d0e56e7c3a

View File

@@ -1,357 +0,0 @@
https://github.com/gogglesmm/gogglesmm/commit/abd6ec6b8270feb1841a97f9be5364541f4a939c.patch
https://github.com/gogglesmm/gogglesmm/commit/9f7110b0950a2862016e18163b9c2737a2a935d6.patch
diff --git a/src/GMAbout.cpp b/src/GMAbout.cpp
index eb2c565..0b625cb 100644
--- a/src/GMAbout.cpp
+++ b/src/GMAbout.cpp
@@ -27,7 +27,6 @@
#endif
#include <FXPNGIcon.h>
#include <sqlite3.h>
-#include <tag.h>
#define UTF8_COPYRIGHT_SIGN "\xc2\xa9"
diff --git a/src/GMTag.cpp b/src/GMTag.cpp
index 2add466..a32ce46 100644
--- a/src/GMTag.cpp
+++ b/src/GMTag.cpp
@@ -26,9 +26,9 @@
#include "GMTag.h"
#include "GMAudioPlayer.h"
-/// TagLib
-
+// taglib Variant enum Type { Bool } conflicts with Xlib
+#undef Bool
#include <fileref.h>
#include <tstring.h>
#include <id3v1tag.h>
@@ -339,6 +339,7 @@ static void gm_strip_tags(TagLib::File * file,FXuint opts) {
/******************************************************************************/
GMFileTag::GMFileTag() :
+ fileref(nullptr),
file(nullptr),
tag(nullptr),
mp4(nullptr),
@@ -349,20 +350,35 @@ GMFileTag::GMFileTag() :
}
GMFileTag::~GMFileTag() {
+#if TAGLIB_VERSION >= TAGVERSION(2,0,0)
+ if (fileref) delete fileref;
+#else
if (file) delete file;
+#endif
}
FXbool GMFileTag::open(const FXString & filename,FXuint opts) {
-
- file = TagLib::FileRef::create(filename.text(),(opts&FILETAG_AUDIOPROPERTIES));
- if (file==nullptr || !file->isValid() || file->tag()==nullptr) {
- if (file) {
- delete file;
- file=nullptr;
+#if TAGLIB_VERSION >= TAGVERSION(2,0,0)
+ fileref = new TagLib::FileRef(filename.text(),(opts&FILETAG_AUDIOPROPERTIES));
+ file = fileref->file();
+ if (file==nullptr || !file->isValid() || file->tag()==nullptr) {
+ if (fileref) {
+ delete fileref;
+ fileref=nullptr;
+ }
+ return false;
}
- return false;
- }
+#else
+ file = TagLib::FileRef::create(filename.text(),(opts&FILETAG_AUDIOPROPERTIES));
+ if (file==nullptr || !file->isValid() || file->tag()==nullptr) {
+ if (file) {
+ delete file;
+ file=nullptr;
+ }
+ return false;
+ }
+#endif
TagLib::MPEG::File * mpgfile = nullptr;
TagLib::Ogg::Vorbis::File * oggfile = nullptr;
@@ -521,7 +537,11 @@ FXbool GMFileTag::ape_get_field(const FXchar * field,FXStringList & list) const
FXASSERT(field);
FXASSERT(ape);
if (ape->itemListMap().contains(field)) {
+#if TAGLIB_VERSION >= TAGVERSION(2,0,0)
+ const TagLib::StringList fieldlist = ape->itemListMap()[field].values();
+#else
const TagLib::StringList fieldlist = ape->itemListMap()[field].toStringList();
+#endif
list.no(fieldlist.size());
FXint item=0;
for(TagLib::StringList::ConstIterator it = fieldlist.begin(); it != fieldlist.end(); it++) {
@@ -635,16 +655,35 @@ FXbool GMFileTag::id3v2_get_field(const FXchar * field,FXStringList & list) con
void GMFileTag::mp4_update_field(const FXchar * field,const FXString & value) {
FXASSERT(field);
FXASSERT(mp4);
+#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
+ if (!value.empty())
+ mp4->setItem(field,TagLib::StringList(TagLib::String(value.text(),TagLib::String::UTF8)));
+ else
+ mp4->removeItem(field);
+#else
if (!value.empty())
mp4->itemListMap().insert(field,TagLib::StringList(TagLib::String(value.text(),TagLib::String::UTF8)));
else
mp4->itemListMap().erase(field);
+#endif
}
void GMFileTag::mp4_update_field(const FXchar * field,const FXStringList & list) {
FXASSERT(field);
FXASSERT(mp4);
+#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
+ if (list.no()==0) {
+ mp4->removeItem(field);
+ }
+ else {
+ TagLib::StringList values;
+ for (FXint i=0;i<list.no();i++) {
+ values.append(TagLib::String(list[i].text(),TagLib::String::UTF8));
+ }
+ mp4->setItem(field,values);
+ }
+#else
if (list.no()==0) {
mp4->itemListMap().erase(field);
}
@@ -655,12 +694,24 @@ void GMFileTag::mp4_update_field(const FXchar * field,const FXStringList & list)
}
mp4->itemListMap().insert(field,values);
}
+#endif
}
FXbool GMFileTag::mp4_get_field(const FXchar * field,FXString & value) const {
FXASSERT(field);
FXASSERT(mp4);
+#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
+ if (mp4->contains(field)) {
+ value=mp4->item(field).toStringList().toString(", ").toCString(true);
+ value.trim();
+ return !value.empty();
+ }
+ else {
+ value.clear();
+ return false;
+ }
+#else
if (mp4->itemListMap().contains(field)) {
value=mp4->itemListMap()[field].toStringList().toString(", ").toCString(true);
value.trim();
@@ -670,14 +721,20 @@ FXbool GMFileTag::mp4_get_field(const FXchar * field,FXString & value) const {
value.clear();
return false;
}
+#endif
}
FXbool GMFileTag::mp4_get_field(const FXchar * field,FXStringList & list) const{
FXASSERT(field);
FXASSERT(mp4);
+#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
+ if (mp4->contains(field)) {
+ const TagLib::StringList fieldlist = mp4->item(field).toStringList();
+#else
if (mp4->itemListMap().contains(field)) {
const TagLib::StringList fieldlist = mp4->itemListMap()[field].toStringList();
+#endif
list.no(fieldlist.size());
FXint item=0;
for(TagLib::StringList::ConstIterator it = fieldlist.begin(); it != fieldlist.end(); it++) {
@@ -936,12 +993,21 @@ void GMFileTag::setDiscNumber(FXushort disc) {
else
id3v2_update_field("TPOS",FXString::null);
}
+#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
+ if (mp4) {
+ if (disc>0)
+ mp4->setItem("disk",TagLib::MP4::Item(disc,0));
+ else
+ mp4->removeItem("disk");
+ }
+#else
if (mp4) {
if (disc>0)
mp4->itemListMap().insert("disk",TagLib::MP4::Item(disc,0));
else
mp4->itemListMap().erase("disk");
}
+#endif
}
@@ -959,9 +1025,15 @@ FXushort GMFileTag::getDiscNumber() const{
else if (id3v2 && id3v2_get_field("TPOS",disc)) {
return string_to_disc_number(disc);
}
+#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
+ else if (mp4 && mp4->contains("disk")) {
+ return FXMIN(mp4->item("disk").toIntPair().first,0xFFFF);
+ }
+#else
else if (mp4 && mp4->itemListMap().contains("disk")) {
return FXMIN(mp4->itemListMap()["disk"].toIntPair().first,0xFFFF);
}
+#endif
return 0;
}
@@ -969,7 +1041,11 @@ FXint GMFileTag::getTime() const{
FXASSERT(file);
TagLib::AudioProperties * properties = file->audioProperties();
if (properties)
+#if TAGLIB_VERSION >= TAGVERSION(2,0,0)
+ return properties->lengthInSeconds();
+#else
return properties->length();
+#endif
else
return 0;
}
@@ -1007,7 +1083,11 @@ FXint GMFileTag::getSampleSize() const{
FXASSERT(file);
TagLib::FLAC::File * flacfile = dynamic_cast<TagLib::FLAC::File*>(file);
if (flacfile && flacfile->audioProperties()) {
+#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
+ return flacfile->audioProperties()->bitsPerSample();
+#else
return flacfile->audioProperties()->sampleWidth();
+#endif
}
else
return 0;
@@ -1081,6 +1161,16 @@ GMCover * GMFileTag::getFrontCover() const {
#endif
}
else if (mp4) { /// MP4
+#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
+ if (mp4->contains("covr")) {
+ TagLib::MP4::CoverArtList coverlist = mp4->item("covr").toCoverArtList();
+ for(TagLib::MP4::CoverArtList::Iterator it = coverlist.begin(); it != coverlist.end(); it++) {
+ if (it->data().size())
+ return new GMCover(it->data().data(),it->data().size());
+ }
+ }
+ }
+#else
if (mp4->itemListMap().contains("covr")) {
TagLib::MP4::CoverArtList coverlist = mp4->itemListMap()["covr"].toCoverArtList();
for(TagLib::MP4::CoverArtList::Iterator it = coverlist.begin(); it != coverlist.end(); it++) {
@@ -1089,6 +1179,7 @@ GMCover * GMFileTag::getFrontCover() const {
}
}
}
+#endif
return nullptr;
}
@@ -1134,6 +1225,15 @@ FXint GMFileTag::getCovers(GMCoverList & covers) const {
}
}
else if (mp4) {
+#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
+ if (mp4->contains("covr")) {
+ TagLib::MP4::CoverArtList coverlist = mp4->item("covr").toCoverArtList();
+ for(TagLib::MP4::CoverArtList::Iterator it = coverlist.begin(); it != coverlist.end(); it++) {
+ if (it->data().size())
+ covers.append(new GMCover(it->data().data(),it->data().size(),0));
+ }
+ }
+#else
if (mp4->itemListMap().contains("covr")) {
TagLib::MP4::CoverArtList coverlist = mp4->itemListMap()["covr"].toCoverArtList();
for(TagLib::MP4::CoverArtList::Iterator it = coverlist.begin(); it != coverlist.end(); it++) {
@@ -1141,6 +1241,7 @@ FXint GMFileTag::getCovers(GMCoverList & covers) const {
covers.append(new GMCover(it->data().data(),it->data().size(),0));
}
}
+#endif
}
return covers.no();
}
@@ -1191,7 +1292,7 @@ void GMFileTag::replaceCover(GMCover*cover,FXuint mode){
}
else if (mp4) {
// mp4 has no type information so we erase all
- mp4->itemListMap().erase("covr");
+ clearCovers();
}
}
else { // COVER_REPLACE_ALL
@@ -1216,7 +1317,11 @@ void GMFileTag::clearCovers() {
#endif
}
else if (mp4) {
- mp4->itemListMap().erase("covr");
+#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
+ mp4->removeItem("covr");
+#else
+ mp4->itemListMap().erase("covr");
+#endif
}
}
@@ -1303,6 +1408,18 @@ void GMFileTag::appendCover(GMCover* cover){
case FILETYPE_GIF: format = TagLib::MP4::CoverArt::GIF; break;
default: return; break;
}
+#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
+ if (!mp4->contains("covr")) {
+ TagLib::MP4::CoverArtList list;
+ list.append(TagLib::MP4::CoverArt(format,TagLib::ByteVector((const FXchar*)cover->data,cover->size)));
+ mp4->setItem("covr",list);
+ }
+ else {
+ TagLib::MP4::CoverArtList list = mp4->item("covr").toCoverArtList();
+ list.append(TagLib::MP4::CoverArt(format,TagLib::ByteVector((const FXchar*)cover->data,cover->size)));
+ mp4->setItem("covr",list);
+ }
+#else
if (!mp4->itemListMap().contains("covr")) {
TagLib::MP4::CoverArtList list;
list.append(TagLib::MP4::CoverArt(format,TagLib::ByteVector((const FXchar*)cover->data,cover->size)));
@@ -1313,6 +1430,7 @@ void GMFileTag::appendCover(GMCover* cover){
list.append(TagLib::MP4::CoverArt(format,TagLib::ByteVector((const FXchar*)cover->data,cover->size)));
mp4->itemListMap().insert("covr",list);
}
+#endif
}
}
diff --git a/src/GMTag.h b/src/GMTag.h
index 26b76f2..1c5fd77 100644
--- a/src/GMTag.h
+++ b/src/GMTag.h
@@ -21,6 +21,7 @@
namespace TagLib {
+ class FileRef;
class File;
class Tag;
namespace MP4 {
@@ -54,6 +55,7 @@ typedef FXArray<GMCover*> GMCoverList;
class GMFileTag {
protected:
+ TagLib::FileRef * fileref;
TagLib::File * file;
TagLib::Tag * tag;
TagLib::MP4::Tag * mp4;

View File

@@ -1,95 +0,0 @@
--- a/gap/ap_http_response.cpp
+++ b/gap/ap_http_response.cpp
@@ -341,7 +341,7 @@
break;
parameters.insert(str.mid(ks,kp-ks),
- unescape(str.mid(s,p-s),'\"','\"'));
+ FX::FXString::unescape(str.mid(s,p-s),'\"','\"'));
p++;
}
else {
--- a/src/GMDBus.cpp
+++ b/src/GMDBus.cpp
@@ -60,7 +60,7 @@
void setuphooks() {
for (FXint i=0;i<connections.no();i++) {
if (!connections.empty(i)) {
- static_cast<GMDBus*>(connections.value(i))->setup_event_loop();
+ static_cast<GMDBus*>(connections.data(i))->setup_event_loop();
}
}
}
@@ -532,7 +532,7 @@
/// remove any pending proxy replies;
for (FXint i=0;i<serial.no();i++) {
if (!serial.empty(i)) {
- GMDBusProxyReply * reply = static_cast<GMDBusProxyReply*>(serial.value(i));
+ GMDBusProxyReply * reply = static_cast<GMDBusProxyReply*>(serial.data(i));
delete reply;
}
}
--- a/src/GMFilename.cpp
+++ b/src/GMFilename.cpp
@@ -167,7 +167,7 @@
else if (Unicode::isPrint(src.wc(i))) {
if (codec->wc2mb(&c,1,src.wc(i))==1) {
if (c==undefined_character) {
- FXString dcm = decompose(src.mid(i,src.extent(i)),false);
+ FXString dcm = FX::FXString::decompose(src.mid(i,src.extent(i)),false);
for (FXint j=0;j<dcm.length();j+=dcm.inc(j)) {
if (Unicode::isPrint(dcm.wc(j)) && codec->wc2mb(&c,1,dcm.wc(j)) && c!=0x1a) {
n++;
@@ -190,7 +190,7 @@
if (c==undefined_character) {
/* If codec didn't contain a mapping to the required character,
do a compatibility decomposition and try mapping those */
- FXString dcm = decompose(src.mid(i,src.extent(i)),false);
+ FXString dcm = FX::FXString::decompose(src.mid(i,src.extent(i)),false);
for (FXint j=0;j<dcm.length();j+=dcm.inc(j)) {
if (Unicode::isPrint(dcm.wc(j)) && codec->wc2mb(&c,1,dcm.wc(j)) && c!=undefined_character) {
dst[n++]=c;
@@ -208,7 +208,7 @@
FXString TextConverter::convert_to_ascii(const FXString & input) const {
- FXString src = decompose(input,false);
+ FXString src = FX::FXString::decompose(input,false);
FXString dst;
FXint i,n=0;
--- a/src/GMTrackDatabase.cpp
+++ b/src/GMTrackDatabase.cpp
@@ -1372,8 +1372,8 @@
void GMTrackDatabase::clear_path_lookup() {
DEBUG_DB_GET();
for (FXint i=0;i<pathdict.no();i++) {
- if (!pathdict.empty(i) && pathdict.value(i)!=nullptr) {
- free(pathdict.value(i));
+ if (!pathdict.empty(i) && pathdict.data(i)!=nullptr) {
+ free(pathdict.data(i));
}
}
pathdict.clear();
@@ -1424,8 +1424,8 @@
void GMTrackDatabase::clear_artist_lookup() {
DEBUG_DB_GET();
for (FXint i=0;i<artistdict.no();i++) {
- if (!artistdict.empty(i) && artistdict.value(i)!=nullptr) {
- FXString * a = (FXString*)artistdict.value(i);
+ if (!artistdict.empty(i) && artistdict.data(i)!=nullptr) {
+ FXString * a = (FXString*)artistdict.data(i);
delete a;
}
}
--- a/src/gmutils.h
+++ b/src/gmutils.h
@@ -26,7 +26,7 @@
FXint remove(FXint name) { return (FXint)(FXival)FXHash::remove((void*)(FXival)name); }
//FXint find(FXint name) const { return (FXint)(FXival)FXHash::find((void*)(FXival)name); }
FXint at(FXint name) const { return (FXint)(FXival)FXHash::at((void*)(FXival)name); }
- FXint key(FXuint pos) const { return (FXint)(FXival)table[pos].name; }
+ FXint key(FXuint pos) const { return (FXint)(FXival)table[pos].key; }
FXint value(FXuint pos) const { return (FXint)(FXival)table[pos].data; }
void adopt(FXIntMap &);
void load(FXStream & store);

View File

@@ -1,49 +0,0 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit cmake xdg
DESCRIPTION="Fast and light music player"
HOMEPAGE="https://gogglesmm.github.io"
SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE="+dbus +flac +mad +vorbis +ogg +opus +aac +pulseaudio +opengl nls"
RDEPEND="x11-libs/fox:1.7
x11-libs/libSM
x11-libs/libICE
dev-db/sqlite
media-libs/taglib
dev-libs/expat
dev-libs/libgcrypt:=
dbus? ( sys-apps/dbus )
flac? ( media-libs/flac:= )
mad? ( media-libs/libmad )
vorbis? ( media-libs/libvorbis )
ogg? ( media-libs/libogg )
opus? ( media-libs/opus )
aac? ( media-libs/faad2 )
pulseaudio? ( media-sound/pulseaudio )
opengl? ( media-libs/libepoxy virtual/glu )"
DEPEND="dev-build/cmake ${RDEPEND}"
PATCHES=( "${FILESDIR}"/"${P}"-use-fox-1.7.67.patch )
src_prepare() {
cmake_src_prepare
}
src_configure() {
local mycmakeargs=(
-DWITH_DBUS="$(usex dbus)"
-DWITH_OPENGL="$(usex opengl)"
-DWITH_NLS="$(usex nls)"
-DWITH_CFOX=OFF
)
cmake_src_configure
}

View File

@@ -1,53 +0,0 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake xdg
DESCRIPTION="Fast and light music player"
HOMEPAGE="https://gogglesmm.github.io"
SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="+aac +dbus +flac +mad nls +ogg +opengl +opus +pulseaudio +vorbis"
RDEPEND="
dev-db/sqlite
dev-libs/expat
dev-libs/libgcrypt:=
media-libs/taglib:=
x11-libs/fox:1.7
x11-libs/libICE
x11-libs/libSM
aac? ( media-libs/faad2 )
dbus? ( sys-apps/dbus )
flac? ( media-libs/flac:= )
mad? ( media-libs/libmad )
ogg? ( media-libs/libogg )
opengl? (
media-libs/libepoxy
virtual/glu
)
opus? ( media-libs/opus )
pulseaudio? ( media-libs/libpulse )
vorbis? ( media-libs/libvorbis )
"
DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}"/"${P}"-use-fox-1.7.67.patch
"${FILESDIR}"/"${P}"-fix-build-taglib2.patch
)
src_configure() {
local mycmakeargs=(
-DWITH_DBUS="$(usex dbus)"
-DWITH_NLS="$(usex nls)"
-DWITH_OPENGL="$(usex opengl)"
-DWITH_CFOX=OFF
)
cmake_src_configure
}