Reimport amarok as amarok-kde3.
This commit is contained in:
parent
204484fc20
commit
05056007c7
9 changed files with 1315 additions and 0 deletions
6
audio/amarok-kde3/DESCR
Normal file
6
audio/amarok-kde3/DESCR
Normal file
|
@ -0,0 +1,6 @@
|
|||
AmaroK is a media player for KDE. There are many media players
|
||||
around these days, true. What's missing from most players is a user
|
||||
interface, that doesn't get in the way of the user. How many buttons
|
||||
do you have to press for simply adding some new tracks to the
|
||||
playlist? amaroK tries to be a little different, providing a simple
|
||||
drag and drop interface, that really makes playlist handling easy.
|
87
audio/amarok-kde3/Makefile
Normal file
87
audio/amarok-kde3/Makefile
Normal file
|
@ -0,0 +1,87 @@
|
|||
# $NetBSD: Makefile,v 1.1.1.1 2010/02/16 08:59:12 wiz Exp $
|
||||
|
||||
DISTNAME= amarok-${VERSION}
|
||||
VERSION= 1.4.10
|
||||
PKGREVISION= 9
|
||||
CATEGORIES= audio kde
|
||||
MASTER_SITES= ${MASTER_SITE_KDE:=amarok/${VERSION}/src/}
|
||||
EXTRACT_SUFX= .tar.bz2
|
||||
|
||||
MAINTAINER= wiz@NetBSD.org
|
||||
HOMEPAGE= http://amarok.kde.org/
|
||||
COMMENT= KDE audio player
|
||||
|
||||
PKG_DESTDIR_SUPPORT= user-destdir
|
||||
|
||||
DEPENDS+= unzip-[0-9]*:../../archivers/unzip
|
||||
|
||||
USE_TOOLS+= gmake pkg-config msgfmt
|
||||
USE_LANGUAGES= c c++
|
||||
GNU_CONFIGURE= yes
|
||||
USE_LIBTOOL= yes
|
||||
|
||||
CONFIGURE_ARGS+= --without-nmm
|
||||
CONFIGURE_ARGS+= --without-mas
|
||||
CONFIGURE_ARGS+= --without-helix
|
||||
CONFIGURE_ARGS+= --with-mp4v2
|
||||
CONFIGURE_ARGS+= --with-mp4v2-dir=${BUILDLINK_PREFIX.libmp4v2}
|
||||
|
||||
LIBS+= ${LIBOSSAUDIO}
|
||||
|
||||
PYTHON_PATCH_SCRIPTS= \
|
||||
amarok/src/scripts/common/Publisher.py \
|
||||
amarok/src/scripts/common/Zeroconf.py \
|
||||
amarok/src/scripts/playlist2html/Playlist.py \
|
||||
amarok/src/scripts/webcontrol/Playlist.py \
|
||||
amarok/src/scripts/playlist2html/PlaylistServer.py \
|
||||
amarok/src/scripts/playlist2html/playlist2html.py \
|
||||
amarok/src/scripts/templates/python_qt_template.py \
|
||||
amarok/src/scripts/webcontrol/Globals.py \
|
||||
amarok/src/scripts/playlist2html/Playlist.py \
|
||||
amarok/src/scripts/webcontrol/Playlist.py \
|
||||
amarok/src/scripts/webcontrol/RequestHandler.py \
|
||||
amarok/src/scripts/webcontrol/WebControl.py \
|
||||
amarok/src/scripts/webcontrol/WebPublisher.py
|
||||
REPLACE_RUBY= \
|
||||
amarok/src/amarok_proxy.rb \
|
||||
amarok/src/mediadevice/daap/amarok_daapserver.rb \
|
||||
amarok/src/scripts/lyrics_astraweb/lyrics_astraweb.rb \
|
||||
amarok/src/scripts/lyrics_lyrc/lyrics_lyrc.rb \
|
||||
amarok/src/scripts/ruby_debug/debug.rb \
|
||||
amarok/src/scripts/score_default/score_default.rb \
|
||||
amarok/src/scripts/score_impulsive/score_impulsive.rb \
|
||||
amarok/src/scripts/templates/amarok.rb \
|
||||
amarok/src/scripts/templates/ruby_qt_template.rb
|
||||
|
||||
SUBST_CLASSES+= dotkdedir
|
||||
SUBST_STAGE.dotkdedir= post-patch
|
||||
SUBST_MESSAGE.dotkdedir=Replacing .kde/share with .kde/share/kde
|
||||
SUBST_FILES.dotkdedir= \
|
||||
amarok/src/scripts/playlist2html/Playlist.py \
|
||||
amarok/src/scripts/webcontrol/Playlist.py \
|
||||
doc/*/config.docbook doc/*/faq.docbook doc/*/advanced.docbook
|
||||
SUBST_SED.dotkdedir= -e 's,\.kde/share/,.kde/share/kde/,'
|
||||
|
||||
BUILDLINK_API_DEPENDS.kdebase+= kdebase>=3.3.0
|
||||
BUILDLINK_API_DEPENDS.kdelibs+= kdelibs>=3.3.0
|
||||
BUILDLINK_API_DEPENDS.taglib+= taglib>=1.4
|
||||
|
||||
.include "options.mk"
|
||||
|
||||
.include "../../audio/libtunepimp/buildlink3.mk"
|
||||
.include "../../audio/libvisual/buildlink3.mk"
|
||||
.include "../../devel/SDL/buildlink3.mk"
|
||||
.include "../../audio/taglib/buildlink3.mk"
|
||||
.include "../../graphics/hicolor-icon-theme/buildlink3.mk"
|
||||
.include "../../lang/python/application.mk"
|
||||
.include "../../lang/ruby/buildlink3.mk"
|
||||
.include "../../lang/ruby/replace.mk"
|
||||
.include "../../meta-pkgs/kde3/kde3.mk"
|
||||
.include "../../mk/oss.buildlink3.mk"
|
||||
.include "../../multimedia/kdemultimedia3/buildlink3.mk"
|
||||
.include "../../multimedia/libmp4v2/buildlink3.mk"
|
||||
.include "../../multimedia/xine-lib/buildlink3.mk"
|
||||
.include "../../sysutils/desktop-file-utils/desktopdb.mk"
|
||||
.include "../../x11/kdebase3/buildlink3.mk"
|
||||
.include "../../x11/kdelibs3/buildlink3.mk"
|
||||
.include "../../mk/bsd.pkg.mk"
|
1007
audio/amarok-kde3/PLIST
Normal file
1007
audio/amarok-kde3/PLIST
Normal file
File diff suppressed because it is too large
Load diff
9
audio/amarok-kde3/distinfo
Normal file
9
audio/amarok-kde3/distinfo
Normal file
|
@ -0,0 +1,9 @@
|
|||
$NetBSD: distinfo,v 1.1.1.1 2010/02/16 08:59:12 wiz Exp $
|
||||
|
||||
SHA1 (amarok-1.4.10.tar.bz2) = cb0bebe99c6f4dc1b01601f2f3aee3a86da08fbd
|
||||
RMD160 (amarok-1.4.10.tar.bz2) = f86c71dd0459e0cf1ff586cd6de240ca6501cf62
|
||||
Size (amarok-1.4.10.tar.bz2) = 12812583 bytes
|
||||
SHA1 (patch-aa) = 53316f334f45a8a4780ae71061d528374a75cb5a
|
||||
SHA1 (patch-ab) = 91097c1d901fb66c5c8e593005c462b1874f50bf
|
||||
SHA1 (patch-ac) = ea6900aafc3cd99069ac59929ae14296662d095f
|
||||
SHA1 (patch-ad) = eea8105897ce4cd9d4a086430ec0588125b3517b
|
30
audio/amarok-kde3/options.mk
Normal file
30
audio/amarok-kde3/options.mk
Normal file
|
@ -0,0 +1,30 @@
|
|||
# $NetBSD: options.mk,v 1.1.1.1 2010/02/16 08:59:13 wiz Exp $
|
||||
|
||||
PKG_OPTIONS_VAR= PKG_OPTIONS.amarok
|
||||
PKG_SUPPORTED_OPTIONS= libgpod libmtp mysql pgsql
|
||||
|
||||
.include "../../mk/bsd.options.mk"
|
||||
|
||||
PLIST_VARS+= ipod libmtp
|
||||
|
||||
.if !empty(PKG_OPTIONS:Mlibgpod)
|
||||
PLIST.ipod= yes
|
||||
CONFIGURE_ARGS+= --enable-libgpod
|
||||
BUILDLINK_API_DEPENDS.libgpod+= libgpod>=0.4.2
|
||||
. include "../../audio/libgpod/buildlink3.mk"
|
||||
.endif
|
||||
|
||||
.if !empty(PKG_OPTIONS:Mlibmtp)
|
||||
PLIST.libmtp= yes
|
||||
. include "../../devel/libmtp/buildlink3.mk"
|
||||
.endif
|
||||
|
||||
.if !empty(PKG_OPTIONS:Mmysql)
|
||||
CONFIGURE_ARGS+= --enable-mysql
|
||||
. include "../../mk/mysql.buildlink3.mk"
|
||||
.endif
|
||||
|
||||
.if !empty(PKG_OPTIONS:Mpgsql)
|
||||
CONFIGURE_ARGS+= --enable-postgresql
|
||||
. include "../../mk/pgsql.buildlink3.mk"
|
||||
.endif
|
46
audio/amarok-kde3/patches/patch-aa
Normal file
46
audio/amarok-kde3/patches/patch-aa
Normal file
|
@ -0,0 +1,46 @@
|
|||
$NetBSD: patch-aa,v 1.1.1.1 2010/02/16 08:59:13 wiz Exp $
|
||||
|
||||
--- amarok/src/mediadevice/mtp/mtpmediadevice.cpp.orig 2008-08-13 23:21:51.000000000 +0200
|
||||
+++ amarok/src/mediadevice/mtp/mtpmediadevice.cpp
|
||||
@@ -293,12 +293,13 @@ MediaItem
|
||||
parent_id = getDefaultParentId();
|
||||
}
|
||||
debug() << "Parent id : " << parent_id << endl;
|
||||
+ trackmeta->parent_id = parent_id;
|
||||
|
||||
m_critical_mutex.lock();
|
||||
debug() << "Sending track... " << bundle.url().path().utf8() << endl;
|
||||
int ret = LIBMTP_Send_Track_From_File(
|
||||
m_device, bundle.url().path().utf8(), trackmeta,
|
||||
- progressCallback, this, parent_id
|
||||
+ progressCallback, this
|
||||
);
|
||||
m_critical_mutex.unlock();
|
||||
|
||||
@@ -529,7 +530,7 @@ LIBMTP_album_t
|
||||
for( MtpMediaItem *it = dynamic_cast<MtpMediaItem*>(items->first()); it; it = dynamic_cast<MtpMediaItem*>(items->next()) )
|
||||
album_object->tracks[i++] = it->track()->id();
|
||||
album_object->no_tracks = items->count();
|
||||
- ret = LIBMTP_Create_New_Album( m_device, album_object, 0 );
|
||||
+ ret = LIBMTP_Create_New_Album( m_device, album_object );
|
||||
if( ret != 0 )
|
||||
{
|
||||
debug() << "creating album failed : " << ret << endl;
|
||||
@@ -608,7 +609,7 @@ MtpMediaDevice::createFolder( const char
|
||||
{
|
||||
debug() << "Creating new folder '" << name << "' as a child of "<< parent_id << endl;
|
||||
char *name_copy = qstrdup( name );
|
||||
- uint32_t new_folder_id = LIBMTP_Create_Folder( m_device, name_copy, parent_id );
|
||||
+ uint32_t new_folder_id = LIBMTP_Create_Folder( m_device, name_copy, parent_id, 0 );
|
||||
delete(name_copy);
|
||||
debug() << "New folder ID: " << new_folder_id << endl;
|
||||
if( new_folder_id == 0 )
|
||||
@@ -913,7 +914,7 @@ MtpMediaDevice::playlistFromItem( MtpMed
|
||||
if( item->playlist()->id() == 0 )
|
||||
{
|
||||
debug() << "creating new playlist : " << metadata->name << endl;
|
||||
- int ret = LIBMTP_Create_New_Playlist( m_device, metadata, 0 );
|
||||
+ int ret = LIBMTP_Create_New_Playlist( m_device, metadata );
|
||||
if( ret == 0 )
|
||||
{
|
||||
item->playlist()->setId( metadata->playlist_id );
|
22
audio/amarok-kde3/patches/patch-ab
Normal file
22
audio/amarok-kde3/patches/patch-ab
Normal file
|
@ -0,0 +1,22 @@
|
|||
$NetBSD: patch-ab,v 1.1.1.1 2010/02/16 08:59:13 wiz Exp $
|
||||
|
||||
--- configure.orig 2007-06-17 19:52:02.000000000 +0000
|
||||
+++ configure
|
||||
@@ -37060,7 +37060,7 @@ if test "${ac_cv_lib_tunepimp_tr_GetPUID
|
||||
echo $ECHO_N "(cached) $ECHO_C" >&6
|
||||
else
|
||||
ac_check_lib_save_LIBS=$LIBS
|
||||
-LIBS="-ltunepimp $LIBS"
|
||||
+LIBS="-ltunepimp $PTHREAD_LDFLAGS $PTHREAD_LIBS $LIBS"
|
||||
cat >conftest.$ac_ext <<_ACEOF
|
||||
/* confdefs.h. */
|
||||
_ACEOF
|
||||
@@ -37579,7 +37579,7 @@ if test "${ac_cv_lib_konqsidebarplugin__
|
||||
echo $ECHO_N "(cached) $ECHO_C" >&6
|
||||
else
|
||||
ac_check_lib_save_LIBS=$LIBS
|
||||
-LIBS="-lkonqsidebarplugin $LIBS"
|
||||
+LIBS="-lkonqsidebarplugin ${PTHREAD_LIBS} ${PTHREAD_LDFLAGS} $LIBS"
|
||||
cat >conftest.$ac_ext <<_ACEOF
|
||||
/* confdefs.h. */
|
||||
_ACEOF
|
19
audio/amarok-kde3/patches/patch-ac
Normal file
19
audio/amarok-kde3/patches/patch-ac
Normal file
|
@ -0,0 +1,19 @@
|
|||
$NetBSD: patch-ac,v 1.1.1.1 2010/02/16 08:59:13 wiz Exp $
|
||||
|
||||
SVN commit 917750 by nhnielsen:
|
||||
Fix for wikipedia tab not showing any info. Thanks to Helge Stenström
|
||||
and WarwickH at
|
||||
https://bugs.edge.launchpad.net/ubuntu/+source/amarok/+bug/316140 for
|
||||
the fix.
|
||||
|
||||
--- amarok/src/contextbrowser.cpp.orig 2008-08-13 21:21:51.000000000 +0000
|
||||
+++ amarok/src/contextbrowser.cpp
|
||||
@@ -4189,7 +4189,7 @@ ContextBrowser::wikiResult( KIO::Job* jo
|
||||
}
|
||||
|
||||
// Ok lets remove the top and bottom parts of the page
|
||||
- m_wiki = m_wiki.mid( m_wiki.find( "<h1 class=\"firstHeading\">" ) );
|
||||
+ m_wiki = m_wiki.mid( m_wiki.find( "<h1 id=\"firstHeading\"" ) );
|
||||
m_wiki = m_wiki.mid( 0, m_wiki.find( "<div class=\"printfooter\">" ) );
|
||||
// Adding back license information
|
||||
m_wiki += copyright;
|
89
audio/amarok-kde3/patches/patch-ad
Normal file
89
audio/amarok-kde3/patches/patch-ad
Normal file
|
@ -0,0 +1,89 @@
|
|||
$NetBSD: patch-ad,v 1.1.1.1 2010/02/16 08:59:13 wiz Exp $
|
||||
|
||||
Security fix, SVN r908415 from upstream 1.4.x branch.
|
||||
|
||||
--- amarok/src/metadata/audible/audibletag.cpp.orig 2008-08-13 23:21:51.000000000 +0200
|
||||
+++ amarok/src/metadata/audible/audibletag.cpp
|
||||
@@ -71,7 +71,8 @@ void Audible::Tag::readTags( FILE *fp )
|
||||
{
|
||||
char buf[1023];
|
||||
fseek(fp, OFF_PRODUCT_ID, SEEK_SET);
|
||||
- fread(buf, strlen("product_id"), 1, fp);
|
||||
+ if (fread(buf, strlen("product_id"), 1, fp) != 1)
|
||||
+ return;
|
||||
if(memcmp(buf, "product_id", strlen("product_id")))
|
||||
{
|
||||
buf[20]='\0';
|
||||
@@ -130,24 +131,65 @@ void Audible::Tag::readTags( FILE *fp )
|
||||
|
||||
bool Audible::Tag::readTag( FILE *fp, char **name, char **value)
|
||||
{
|
||||
+ // arbitrary value that has to be smaller than 2^32-1 and that should be large enough for all tags
|
||||
+ const uint32_t maxtaglen = 100000;
|
||||
+
|
||||
uint32_t nlen;
|
||||
- fread(&nlen, sizeof(nlen), 1, fp);
|
||||
+ if (fread(&nlen, sizeof(nlen), 1, fp) != 1)
|
||||
+ return false;
|
||||
nlen = ntohl(nlen);
|
||||
//fprintf(stderr, "tagname len=%x\n", (unsigned)nlen);
|
||||
- *name = new char[nlen+1];
|
||||
- (*name)[nlen] = '\0';
|
||||
+ if (nlen > maxtaglen)
|
||||
+ return false;
|
||||
|
||||
uint32_t vlen;
|
||||
- fread(&vlen, sizeof(vlen), 1, fp);
|
||||
+ if (fread(&vlen, sizeof(vlen), 1, fp) != 1)
|
||||
+ return false;
|
||||
vlen = ntohl(vlen);
|
||||
//fprintf(stderr, "tag len=%x\n", (unsigned)vlen);
|
||||
+ if (vlen > maxtaglen)
|
||||
+ return false;
|
||||
+
|
||||
+ *name = new char[nlen+1];
|
||||
+ if (!*name)
|
||||
+ return false;
|
||||
+
|
||||
*value = new char[vlen+1];
|
||||
+ if (!*value)
|
||||
+ {
|
||||
+ delete[] *name;
|
||||
+ *name = 0;
|
||||
+ return false;
|
||||
+ }
|
||||
+
|
||||
+ (*name)[nlen] = '\0';
|
||||
(*value)[vlen] = '\0';
|
||||
|
||||
- fread(*name, nlen, 1, fp);
|
||||
- fread(*value, vlen, 1, fp);
|
||||
+ if (fread(*name, nlen, 1, fp) != 1)
|
||||
+ {
|
||||
+ delete[] *name;
|
||||
+ *name = 0;
|
||||
+ delete[] *value;
|
||||
+ *value = 0;
|
||||
+ return false;
|
||||
+ }
|
||||
+ if (fread(*value, vlen, 1, fp) != 1)
|
||||
+ {
|
||||
+ delete[] *name;
|
||||
+ *name = 0;
|
||||
+ delete[] *value;
|
||||
+ *value = 0;
|
||||
+ return false;
|
||||
+ }
|
||||
char lasttag;
|
||||
- fread(&lasttag, 1, 1, fp);
|
||||
+ if (fread(&lasttag, 1, 1, fp) != 1)
|
||||
+ {
|
||||
+ delete[] *name;
|
||||
+ *name = 0;
|
||||
+ delete[] *value;
|
||||
+ *value = 0;
|
||||
+ return false;
|
||||
+ }
|
||||
//fprintf(stderr, "%s: \"%s\"\n", *name, *value);
|
||||
|
||||
m_tagsEndOffset += 2 * 4 + nlen + vlen + 1;
|
Loading…
Reference in a new issue