View | Details | Raw Unified | Return to bug 208988
Collapse All | Expand All

(-)multimedia/quodlibet/Makefile (-25 / +23 lines)
Lines 2-9 Link Here
2
# $FreeBSD$
2
# $FreeBSD$
3
3
4
PORTNAME=	quodlibet
4
PORTNAME=	quodlibet
5
PORTVERSION=	2.6.3
5
PORTVERSION=	3.6.1
6
PORTREVISION=	3
7
CATEGORIES=	multimedia audio python gnome
6
CATEGORIES=	multimedia audio python gnome
8
MASTER_SITES=	http://bitbucket.org/lazka/${PORTNAME}-files/raw/default/releases/
7
MASTER_SITES=	http://bitbucket.org/lazka/${PORTNAME}-files/raw/default/releases/
9
8
Lines 11-32 Link Here
11
COMMENT=	GTK+-based audio player written in Python
10
COMMENT=	GTK+-based audio player written in Python
12
11
13
LICENSE=	GPLv2
12
LICENSE=	GPLv2
13
LICENSE_FILE=	${WRKSRC}/COPYING
14
14
15
BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}mutagen>0:audio/py-mutagen
15
BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}mutagen>0:audio/py-mutagen
16
RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}mutagen>0:audio/py-mutagen
16
RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}musicbrainzngs>=0.4:audio/py-musicbrainzngs \
17
		${PYTHON_PKGNAMEPREFIX}mutagen>0:audio/py-mutagen \
18
		${LOCALBASE}/libexec/notification-daemon:deskutils/notification-daemon
19
LIB_DEPENDS=	libsoup-2.4.so:devel/libsoup \
20
		libwebkit2gtk-4.0.so:www/webkit2-gtk3
17
21
18
USE_PYTHON=	distutils autoplist
22
USE_PYTHON=			distutils autoplist
19
USE_GNOME=	intltool pygtk2
23
USE_GNOME=			gtk30 intltool pygobject3
20
USES=		display gettext python
24
USES=				desktop-file-utils display gettext python
21
PYDISTUTILS_INSTALLNOSINGLE=	yes
25
PYDISTUTILS_INSTALLNOSINGLE=	yes
22
26
23
EXTRA_PATCHES=	${FILESDIR}/extra-patch-pydistutils
27
USE_GSTREAMER1=	good
24
28
25
USE_GSTREAMER=	gconf good python
29
OPTIONS_DEFINE=		AAC DBUS FLAC MP3 OGG REMOTE SPEEX VORBIS WAVPACK
26
27
OPTIONS_DEFINE=		FLAC MP3 AAC MUSEPACK OGG SPEEX VORBIS WAVPACK DBUS REMOTE
28
OPTIONS_DEFINE_i386=	SPC
30
OPTIONS_DEFINE_i386=	SPC
29
OPTIONS_DEFAULT=	FLAC MP3 AAC MUSEPACK OGG SPEEX VORBIS WAVPACK DBUS REMOTE
31
OPTIONS_DEFAULT=	AAC DBUS FLAC MP3 OGG REMOTE SPEEX VORBIS WAVPACK
30
OPTIONS_DEFAULT_i386=	SPC
32
OPTIONS_DEFAULT_i386=	SPC
31
33
32
SPC_DESC=	SPC (SNES ROM audio) support on i386
34
SPC_DESC=	SPC (SNES ROM audio) support on i386
Lines 33-53 Link Here
33
SPEEX_DESC=	OGG/Speex audio support
35
SPEEX_DESC=	OGG/Speex audio support
34
REMOTE_DESC=	Enable remote playback
36
REMOTE_DESC=	Enable remote playback
35
37
36
OGG_USE=	GSTREAMER=ogg
38
OGG_USE=	GSTREAMER1=ogg
37
VORBIS_USE=	GSTREAMER=vorbis
39
VORBIS_USE=	GSTREAMER1=vorbis
38
SPC_USE=	GSTREAMER=spc
40
SPC_USE=	GSTREAMER1=spc
39
SPEEX_USE=	GSTREAMER=speex
41
SPEEX_USE=	GSTREAMER1=speex
40
MP3_USE=	GSTREAMER=mp3
42
MP3_USE=	GSTREAMER1=mad
41
FLAC_USE=	GSTREAMER=flac
43
FLAC_USE=	GSTREAMER1=flac
42
44
43
MUSEPACK_LIB_DEPENDS=	libmpcdec.so:audio/musepack
44
MUSEPACK_USE=		GSTREAMER=musepack
45
46
WAVPACK_LIB_DEPENDS=	libwavpack.so:audio/wavpack
47
WAVPACK_USE=		GSTREAMER=wavpack
48
49
AAC_LIB_DEPENDS=	libmp4v2.so:multimedia/mp4v2
45
AAC_LIB_DEPENDS=	libmp4v2.so:multimedia/mp4v2
50
AAC_USE=		GSTREAMER=faad
46
AAC_USE=		GSTREAMER1=faad
51
47
52
DBUS_BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}dbus>0:devel/py-dbus
48
DBUS_BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}dbus>0:devel/py-dbus
53
DBUS_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}dbus>0:devel/py-dbus
49
DBUS_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}dbus>0:devel/py-dbus
Lines 54-59 Link Here
54
50
55
REMOTE_BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}feedparser>0:textproc/py-feedparser
51
REMOTE_BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}feedparser>0:textproc/py-feedparser
56
REMOTE_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}feedparser>0:textproc/py-feedparser
52
REMOTE_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}feedparser>0:textproc/py-feedparser
57
REMOTE_USE=		GSTREAMER=gnomevfs
58
53
54
WAVPACK_LIB_DEPENDS=	libwavpack.so:audio/wavpack
55
WAVPACK_USE=		GSTREAMER1=wavpack
56
59
.include <bsd.port.mk>
57
.include <bsd.port.mk>
(-)multimedia/quodlibet/distinfo (-2 / +2 lines)
Lines 1-2 Link Here
1
SHA256 (quodlibet-2.6.3.tar.gz) = dff4ebb90c676678f72cecbff8ab15d80154354f40a865b6c9c82bb048d48a46
1
SHA256 (quodlibet-3.6.1.tar.gz) = e6525bbdebd790992431b15775e9ec257f72a4dccb1136994186c32549c04a48
2
SIZE (quodlibet-2.6.3.tar.gz) = 2507416
2
SIZE (quodlibet-3.6.1.tar.gz) = 3167319
(-)multimedia/quodlibet/files/extra-patch-pydistutils (-145 lines)
Lines 1-145 Link Here
1
--- gdist/icons.py.orig	2013-09-25 12:31:19.000000000 +0200
2
+++ gdist/icons.py	2014-04-23 11:06:22.328926759 +0200
3
@@ -35,13 +35,16 @@
4
     prefix = None
5
 
6
     def initialize_options(self):
7
-        pass
8
+        self.outfiles = []
9
 
10
     def finalize_options(self):
11
         self.set_undefined_options('install',
12
                                    ('root', 'root'),
13
                                    ('install_base', 'prefix'))
14
 
15
+    def get_outputs(self):
16
+        return self.outfiles
17
+
18
     def run(self):
19
         # install into hicolor icon theme
20
         basepath = os.path.join(self.prefix, 'share', 'icons', 'hicolor')
21
@@ -52,11 +55,13 @@
22
 
23
         scalable = os.path.join(local, "scalable", "apps")
24
         scalable_dst = os.path.join(basepath, "scalable", "apps")
25
-        self.copy_tree(scalable, scalable_dst)
26
+        out = self.copy_tree(scalable, scalable_dst)
27
+        self.outfiles.extend(out)
28
 
29
         png = os.path.join(local, "64x64", "apps")
30
         png_dst = os.path.join(basepath, "64x64", "apps")
31
-        self.copy_tree(png, png_dst)
32
+        out = self.copy_tree(png, png_dst)
33
+        self.outfiles.extend(out)
34
 
35
         # this fails during packaging.. so ignore the outcome
36
         subprocess.call(['gtk-update-icon-cache', basepath])
37
@@ -66,4 +71,5 @@
38
         if self.root is not None:
39
             basepath = change_root(self.root, basepath)
40
 
41
-        self.copy_tree(png, basepath)
42
+        out = self.copy_tree(png, basepath)
43
+        self.outfiles.extend(out)
44
--- gdist/man.py.orig	2013-09-25 12:31:19.000000000 +0200
45
+++ gdist/man.py	2014-04-23 11:10:03.793912457 +0200
46
@@ -29,7 +29,7 @@
47
     root = None
48
 
49
     def initialize_options(self):
50
-        pass
51
+        self.outfiles = []
52
 
53
     def finalize_options(self):
54
         self.set_undefined_options('install', ('root', 'root'), ('install_base', 'prefix'))
55
@@ -38,15 +38,22 @@
56
             if not man_page[-1].isdigit():
57
                 raise SystemExit("%r has no section" % man_page)
58
 
59
+    def get_outputs(self):
60
+        return self.outfiles
61
+
62
     def run(self):
63
         basepath = os.path.join(self.prefix, 'share', 'man')
64
         if self.root != None:
65
           basepath = change_root(self.root, basepath)
66
-        self.mkpath(basepath)
67
+        out = self.mkpath(basepath)
68
+        self.outfiles.extend(out or [])
69
         for man_page in self.man_pages:
70
             manpath = os.path.join(basepath, "man" + man_page[-1])
71
             self.mkpath(manpath)
72
+            out = self.mkpath(manpath)
73
+            self.outfiles.extend(out or [])
74
             fullpath = os.path.join(manpath, os.path.basename(man_page))
75
-            self.copy_file(man_page, fullpath)
76
+            (out, _) = self.copy_file(man_page, fullpath)
77
+            self.outfiles.append(out)
78
 
79
 __all__ = ["install_man"]
80
--- gdist/po.py.orig	2013-09-25 12:31:19.000000000 +0200
81
+++ gdist/po.py	2014-04-23 11:06:22.329926420 +0200
82
@@ -149,7 +149,7 @@
83
     root = None
84
 
85
     def initialize_options(self):
86
-        pass
87
+        self.outfiles = []
88
 
89
     def finalize_options(self):
90
         self.set_undefined_options('build', ('build_base', 'build_base'))
91
@@ -159,6 +159,9 @@
92
             ('install_base', 'install_base'),
93
             ('skip_build', 'skip_build'))
94
 
95
+    def get_outputs(self):
96
+        return self.outfiles
97
+
98
     def run(self):
99
         if not self.skip_build:
100
             self.run_command('build_mo')
101
@@ -166,6 +169,7 @@
102
         dest = os.path.join(self.install_base, "share", "locale")
103
         if self.root != None:
104
             dest = change_root(self.root, dest)
105
-        self.copy_tree(src, dest)
106
+        out = self.copy_tree(src, dest)
107
+        self.outfiles.extend(out)
108
 
109
 __all__ = ["build_mo", "install_mo", "po_stats", "check_pot"]
110
--- gdist/shortcuts.py.orig	2013-09-25 12:31:19.000000000 +0200
111
+++ gdist/shortcuts.py	2014-04-23 11:11:31.218905210 +0200
112
@@ -66,7 +66,7 @@
113
     root = None
114
 
115
     def initialize_options(self):
116
-        pass
117
+        self.outfiles = []
118
 
119
     def finalize_options(self):
120
         self.set_undefined_options('build', ('build_base', 'build_base'))
121
@@ -79,6 +79,9 @@
122
         self.set_undefined_options(
123
             'build_shortcuts', ('shortcuts', 'shortcuts'))
124
 
125
+    def get_outputs(self):
126
+        return self.outfiles
127
+
128
     def run(self):
129
         if not self.skip_build:
130
             self.run_command('build_shortcuts')
131
@@ -86,10 +89,13 @@
132
         if self.root != None:
133
             basepath = change_root(self.root, basepath)
134
         srcpath = os.path.join(self.build_base, 'share', 'applications')
135
-        self.mkpath(basepath)
136
+        out = self.mkpath(basepath)
137
+        self.outfiles.extend(out or [])
138
         for shortcut in self.shortcuts:
139
             fullsrc = os.path.join(srcpath, shortcut)
140
             fullpath = os.path.join(basepath, shortcut)
141
             self.copy_file(fullsrc, fullpath)
142
+            (out, _) = self.copy_file(fullsrc, fullpath)
143
+            self.outfiles.append(out)
144
 
145
 __all__ = ["build_shortcuts", "install_shortcuts"]
(-)multimedia/quodlibet/files/patch-gdist__man.py (-11 lines)
Lines 1-11 Link Here
1
--- gdist/man.py.orig	2010-02-18 02:56:24.000000000 -0500
2
+++ gdist/man.py	2010-02-18 02:56:58.000000000 -0500
3
@@ -36,7 +36,7 @@
4
                 raise SystemExit("%r has no section" % man_page)
5
 
6
     def run(self):
7
-        basepath = os.path.join(self.prefix, 'share', 'man')
8
+        basepath = os.path.join(self.prefix, 'man')
9
         if self.root != None:
10
           basepath = change_root(self.root, basepath)
11
         self.mkpath(basepath)
(-)multimedia/quodlibet/files/patch-gdist_man.py (+11 lines)
Line 0 Link Here
1
--- gdist/man.py.orig	2016-04-22 21:47:37 UTC
2
+++ gdist/man.py
3
@@ -40,7 +40,7 @@ class install_man(Command):
4
         )
5
 
6
         if self.mandir is None:
7
-            self.mandir = os.path.join(self.install_dir, 'share', 'man')
8
+            self.mandir = os.path.join(self.install_dir, 'man')
9
 
10
         self.man_pages = self.distribution.man_pages
11
         for man_page in self.man_pages:
(-)multimedia/quodlibet/files/patch-operon.py (-8 lines)
Lines 1-8 Link Here
1
--- operon.py.orig	2013-09-13 00:49:22.000000000 +0200
2
+++ operon.py	2014-04-23 12:21:26.430626881 +0200
3
@@ -1,4 +1,4 @@
4
-#!/usr/bin/python
5
+#!/usr/bin/env python
6
 # Copyright 2012,2013 Christoph Reiter
7
 #
8
 # This program is free software; you can redistribute it and/or modify
(-)multimedia/quodlibet/pkg-descr (-1 / +1 lines)
Lines 6-9 Link Here
6
lets you do this for all the file formats it supports -- Ogg Vorbis,
6
lets you do this for all the file formats it supports -- Ogg Vorbis,
7
FLAC, MP3, Musepack, and MOD.
7
FLAC, MP3, Musepack, and MOD.
8
8
9
WWW: http://code.google.com/p/quodlibet/
9
WWW: https://quodlibet.readthedocs.org/
(-)multimedia/quodlibet/pkg-message (-11 lines)
Lines 1-11 Link Here
1
=====================================================================
2
For additional Quod Libet plugins:
3
4
1. Fetch plugins archive from project download page:
5
   https://bitbucket.org/lazka/quodlibet-files/raw/default/releases/quodlibet-plugins-2.6.3.tar.gz
6
7
2. Extract archive into plugin dir in a user's home directory
8
   mkdir -p ~/.quodlibet/plugins/
9
   cd ~/.quodlibet/plugins/
10
   tar xf path/to/downloaded/quodlibet-plugins-2.6.3.tar.gz
11
=====================================================================

Return to bug 208988