Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 15 Nov 2009 14:16:41 +0100 (CET)
From:      Romain Tartiere <mono@FreeBSD.org>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/140570: [maintainer-update] multimedia/banshee version 1.5.1, 1 to 1.5.1_1, 1
Message-ID:  <20091115131641.A14657D36@marvin.blogreen.org>
Resent-Message-ID: <200911151320.nAFDK0vY049344@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         140570
>Category:       ports
>Synopsis:       [maintainer-update] multimedia/banshee version 1.5.1,1 to 1.5.1_1,1
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Sun Nov 15 13:20:00 UTC 2009
>Closed-Date:
>Last-Modified:
>Originator:     Romain Tartiere
>Release:        FreeBSD 8.0-PRERELEASE amd64
>Organization:
>Environment:
System: FreeBSD marvin.blogreen.org 8.0-PRERELEASE FreeBSD 8.0-PRERELEASE #1 r199222M: Thu Nov 12 16:28:33 CET 2009 root@marvin.blogreen.org:/usr/obj/usr/src/sys/MARVIN amd64


	
>Description:

  - Various cleannups;
  - Re-enable the bpm-detection plugin (via OPTIONs)
  - Fix MusicBrainz so that Banshee can use Audio CD.
  - Fix and sort pkg-plist

>How-To-Repeat:
	
>Fix:

	



--- banshee.diff begins here ---
diff -ruN /var/cache/portshaker/freebsd/multimedia/banshee/Makefile /tmp/banshee/Makefile
--- /var/cache/portshaker/freebsd/multimedia/banshee/Makefile	2009-11-09 17:41:09.000000000 +0100
+++ /tmp/banshee/Makefile	2009-11-15 14:13:37.743330850 +0100
@@ -7,6 +7,7 @@
 
 PORTNAME=	banshee
 PORTVERSION=	1.5.1
+PORTREVISION=	1
 PORTEPOCH=	1
 CATEGORIES=	multimedia audio
 MASTER_SITES=	http://download.banshee-project.org/${PORTNAME}/stable/${PORTVERSION}/
@@ -27,17 +28,17 @@
 		${LOCALBASE}/libdata/pkgconfig/mono-zeroconf.pc:${PORTSDIR}/net/mono-zeroconf \
 		${LOCALBASE}/libdata/pkgconfig/mono-addins.pc:${PORTSDIR}/devel/mono-addins
 
-OPTIONS=	DOCS "Install documentation" on \
-		MTP "Enable MTP support" on
-#		BPMDETECT "Enable BPM detection" on
-#		IPOD "Enable iPod support" on \
+OPTIONS=	DOCS      "Install documentation" on \
+		MTP       "Enable MTP support"    on \
+		BPMDETECT "Enable BPM detection"  on \
+#		IPOD      "Enable iPod support"   on
 
 USE_BZIP2=	yes
 USE_GMAKE=	yes
 USE_PERL5_BUILD=yes
 GNU_CONFIGURE=	yes
 USE_GNOME=	gnomehack gtksharp20 gnomesharp20
-USE_GSTREAMER=	yes
+USE_GSTREAMER=	cdparanoia
 USE_GETTEXT=	yes
 USE_LDCONFIG=	${PREFIX}/lib/${PORTNAME}-1
 USE_XORG=	xrandr xxf86vm
@@ -72,36 +73,8 @@
 PLIST_SUB+=	OPT_MTP="@comment "
 .endif
 
-#.if !defined(WITHOUT_BPMDETECT)
-#USE_GSTREAMER+=	soundtouch
-#.endif
-
-post-patch:
-	@${REINPLACE_CMD} "s|!/bin/bash|!${PREFIX}/bin/bash|" \
-				${WRKSRC}/build/icon-theme-installer \
-				${WRKSRC}/build/private-icon-theme-installer \
-				${WRKSRC}/data/desktop-files/update-desktop-file.sh \
-				${WRKSRC}/src/Clients/Booter/banshee-1.in
-	@${REINPLACE_CMD} 's|sed -r|sed -E|' \
-				${WRKSRC}/data/icon-theme-hicolor/Makefile.in
-#				${WRKSRC}/configure \
-
-# XXX - This is gross.
-post-configure:
-	@${REINPLACE_CMD} -e 's|^\(MSGFMT =\).*|\1 ${LOCALBASE}/bin/msgfmt|' \
-		-e 's|^\(GMSGFMT =\).*|\1 ${LOCALBASE}/bin/msgfmt|' \
-			${WRKSRC}/po/Makefile
-
-# XXX - Really ugly too.
-pre-build:
-	${MKDIR} ${WRKSRC}/bin/share/banshee-1/icons/hicolor/scalable/
-
-# XXX - This one is the best.
-pre-install:
-.for i in 16x16 22x22 32x32 48x48 128x128 scalable
-. for j in actions categories devices status
-	@${MKDIR} ${PREFIX}/share/banshee-1/icons/hicolor/$i/$j/
-. endfor
-.endfor
+.if !defined(WITHOUT_BPMDETECT)
+USE_GSTREAMER+=	soundtouch
+.endif
 
 .include <bsd.port.post.mk>
diff -ruN /var/cache/portshaker/freebsd/multimedia/banshee/files/patch-fix-startup /tmp/banshee/files/patch-fix-startup
--- /var/cache/portshaker/freebsd/multimedia/banshee/files/patch-fix-startup	2009-02-23 10:56:02.000000000 +0100
+++ /tmp/banshee/files/patch-fix-startup	1970-01-01 01:00:00.000000000 +0100
@@ -1,13 +0,0 @@
---- src/Core/Banshee.Services/Banshee.MediaEngine/TranscoderService.cs.orig	2008-10-01 17:43:36.000000000 +0000
-+++ src/Core/Banshee.Services/Banshee.MediaEngine/TranscoderService.cs	2009-02-23 09:48:57.000000000 +0000
-@@ -97,7 +97,9 @@
-             queue = new Queue <TranscodeContext> ();
- 
-             try {
--                Banshee.IO.Directory.Delete (cache_dir, true);
-+		if (Banshee.IO.Directory.Exists (cache_dir)) {
-+                    Banshee.IO.Directory.Delete (cache_dir, true);
-+		}
-             } catch {}
- 
-             Banshee.IO.Directory.Create (cache_dir);
diff -ruN /var/cache/portshaker/freebsd/multimedia/banshee/files/patch-src_Libraries_MusicBrainz_Makefile.in /tmp/banshee/files/patch-src_Libraries_MusicBrainz_Makefile.in
--- /var/cache/portshaker/freebsd/multimedia/banshee/files/patch-src_Libraries_MusicBrainz_Makefile.in	1970-01-01 01:00:00.000000000 +0100
+++ /tmp/banshee/files/patch-src_Libraries_MusicBrainz_Makefile.in	2009-11-15 13:05:13.249510000 +0100
@@ -0,0 +1,13 @@
+
+$FreeBSD$
+
+--- src/Libraries/MusicBrainz/Makefile.in.orig
++++ src/Libraries/MusicBrainz/Makefile.in
+@@ -347,6 +347,7 @@
+ SOURCES = \
+ 	MusicBrainz/Artist.cs \
+ 	MusicBrainz/Disc.cs \
++	MusicBrainz/DiscFreeBSD.cs \
+ 	MusicBrainz/DiscLinux.cs \
+ 	MusicBrainz/DiscWin32.cs \
+ 	MusicBrainz/Event.cs \
diff -ruN /var/cache/portshaker/freebsd/multimedia/banshee/files/patch-src_Libraries_MusicBrainz_MusicBrainz_DiscFreeBSD.cs /tmp/banshee/files/patch-src_Libraries_MusicBrainz_MusicBrainz_DiscFreeBSD.cs
--- /var/cache/portshaker/freebsd/multimedia/banshee/files/patch-src_Libraries_MusicBrainz_MusicBrainz_DiscFreeBSD.cs	1970-01-01 01:00:00.000000000 +0100
+++ /tmp/banshee/files/patch-src_Libraries_MusicBrainz_MusicBrainz_DiscFreeBSD.cs	2009-11-15 13:05:13.249510000 +0100
@@ -0,0 +1,140 @@
+
+$FreeBSD$
+
+--- /dev/null
++++ src/Libraries/MusicBrainz/MusicBrainz/DiscFreeBSD.cs
+@@ -0,0 +1,134 @@
++// DiskFreeBSD.cs
++// 
++// Copyright (c) 2009 Romain Tartière <romain@blogreen.org>
++//
++// Permission is hereby granted, free of charge, to any person obtaining a copy
++// of this software and associated documentation files (the "Software"), to deal
++// in the Software without restriction, including without limitation the rights
++// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
++// copies of the Software, and to permit persons to whom the Software is
++// furnished to do so, subject to the following conditions:
++//
++// The above copyright notice and this permission notice shall be included in
++// all copies or substantial portions of the Software.
++//
++// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
++// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
++// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
++// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
++// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
++// THE SOFTWARE.
++
++using System;
++using System.Runtime.InteropServices;
++
++namespace MusicBrainz
++{
++	internal sealed class DiscFreeBSD : LocalDisc
++	{
++	
++#region <fcntl.h>
++		const int O_RDONLY   = 0x0000;	// open for reading only
++		const int O_NONBLOCK = 0x0004;	// no delay
++
++		[DllImport ("libc.so.7", CharSet = CharSet.Auto, SetLastError = true)]
++		static extern int open (string path, int flags);
++#endregion
++		
++#region <unistd.h>
++		[DllImport ("libc.so.7", SetLastError = true)]
++		static extern int close (int d);
++#endregion
++
++#region <sys/cdio.h>
++		struct msf_lba {
++			public int lba;	// network byte order
++		};
++		
++		[StructLayout (LayoutKind.Explicit)]
++		struct cd_toc_entry {
++			[FieldOffset (2)]
++			public byte track;
++			[FieldOffset (4)]
++			public msf_lba addr;
++		};
++		
++		// Ioctls for the CD drive
++		
++		const byte CD_LBA_FORMAT = 1;
++		
++		struct ioc_toc_header {
++			public short len;
++			public byte starting_track;
++			public byte ending_track;
++		};
++		const ulong CDIOREADTOCHEADER = 1074029316;
++		[DllImport ("libc.so.7", EntryPoint = "ioctl")]
++        static extern int cd_read_toc_header (int fd, ulong request, ref ioc_toc_header data);
++        static int cd_read_toc_header (int fd, ref ioc_toc_header data)
++        {
++            return cd_read_toc_header (fd, CDIOREADTOCHEADER, ref data);
++        }
++		
++		struct ioc_read_toc_entry {
++			public byte address_format;
++			public byte starting_track;
++			public ushort data_len;
++			public IntPtr data; // cd_toc_entry*
++		};
++		const ulong CDIOREADTOCENTRYS = 3222299397;
++		[DllImport ("libc.so.7", EntryPoint = "ioctl")]
++        static extern int cd_read_toc_entrys (int fd, ulong request, ref ioc_read_toc_entry data);
++        static int cd_read_toc_entrys (int fd, ref ioc_read_toc_entry data)
++        {
++            return cd_read_toc_entrys (fd, CDIOREADTOCENTRYS, ref data);
++        }
++		
++#endregion
++		
++		internal DiscFreeBSD (string device)
++		{
++			int fd = open (device, O_RDONLY | O_NONBLOCK);
++			
++			if (fd < 0) throw new LocalDiscException (String.Format ("Cannot open device `{0}'", device));
++			
++			try {
++				ioc_toc_header h = new ioc_toc_header ();
++				if (cd_read_toc_header (fd, ref h) < 0) throw new LocalDiscException ("Cannot read table of contents header");
++				if (h.ending_track == 0) throw new LocalDiscException ("This disc has no tracks");
++				
++				first_track = h.starting_track;
++				last_track = h.ending_track;
++				
++				int n = h.ending_track - h.starting_track + 1;
++				int len = (n + 1) * Marshal.SizeOf (typeof (cd_toc_entry));
++				
++				ioc_read_toc_entry t = new ioc_read_toc_entry ();
++				t.address_format = CD_LBA_FORMAT;
++				t.starting_track = 0;
++				t.data_len = (ushort) len;
++				t.data = Marshal.AllocHGlobal (len);
++				try {
++				
++					if (cd_read_toc_entrys (fd, ref t) < 0) throw new LocalDiscException ("Cannot read table of contents entries");
++				
++                	for (int i = 0; i <= n; i++) {
++						ulong offset = (ulong) (i * Marshal.SizeOf (typeof (cd_toc_entry)));
++                		cd_toc_entry e = (cd_toc_entry) Marshal.PtrToStructure ((IntPtr) ((ulong)t.data + offset), typeof (cd_toc_entry));
++    	                track_offsets[first_track + i] = System.Net.IPAddress.NetworkToHostOrder (e.addr.lba) + 150;
++        	        }
++					// Move Leadout to the beginning.
++        	        track_offsets [0] = track_offsets [last_track + 1];
++					track_offsets [last_track + 1] = 0;
++				} finally {
++					Marshal.FreeHGlobal (t.data);
++				}
++			} finally {
++				close (fd);
++			}
++			
++			Init ();
++		}
++	}
++}
diff -ruN /var/cache/portshaker/freebsd/multimedia/banshee/files/patch-src_Libraries_MusicBrainz_MusicBrainz_LocalDisc.cs /tmp/banshee/files/patch-src_Libraries_MusicBrainz_MusicBrainz_LocalDisc.cs
--- /var/cache/portshaker/freebsd/multimedia/banshee/files/patch-src_Libraries_MusicBrainz_MusicBrainz_LocalDisc.cs	1970-01-01 01:00:00.000000000 +0100
+++ /tmp/banshee/files/patch-src_Libraries_MusicBrainz_MusicBrainz_LocalDisc.cs	2009-11-15 13:05:13.249510000 +0100
@@ -0,0 +1,18 @@
+
+$FreeBSD$
+
+--- src/Libraries/MusicBrainz/MusicBrainz/LocalDisc.cs.orig
++++ src/Libraries/MusicBrainz/MusicBrainz/LocalDisc.cs
+@@ -131,7 +131,11 @@
+             try {
+                 switch (Environment.OSVersion.Platform){
+                 case PlatformID.Unix:
+-                    return new DiscLinux (device);
++                        try {
++                            return new DiscLinux (device);
++                        } catch {
++                            return new DiscFreeBSD (device);
++                        }
+                 //case PlatformID.Win32NT:
+                     //return new DiscWin32NT (device);
+                 default:
diff -ruN /var/cache/portshaker/freebsd/multimedia/banshee/pkg-plist /tmp/banshee/pkg-plist
--- /var/cache/portshaker/freebsd/multimedia/banshee/pkg-plist	2009-11-09 17:41:09.000000000 +0100
+++ /tmp/banshee/pkg-plist	2009-11-15 12:48:26.529408000 +0100
@@ -44,14 +44,14 @@
 lib/banshee-1/Extensions/Banshee.CoverArt.dll.mdb
 lib/banshee-1/Extensions/Banshee.Daap.dll
 lib/banshee-1/Extensions/Banshee.Daap.dll.mdb
+%%OPT_IPOD%%lib/banshee-1/Extensions/Banshee.Dap.Ipod.dll
+%%OPT_IPOD%%lib/banshee-1/Extensions/Banshee.Dap.Ipod.dll.mdb
 lib/banshee-1/Extensions/Banshee.Dap.MassStorage.dll
 lib/banshee-1/Extensions/Banshee.Dap.MassStorage.dll.mdb
 %%OPT_MTP%%lib/banshee-1/Extensions/Banshee.Dap.Mtp.dll
 %%OPT_MTP%%lib/banshee-1/Extensions/Banshee.Dap.Mtp.dll.mdb
 lib/banshee-1/Extensions/Banshee.Dap.dll
 lib/banshee-1/Extensions/Banshee.Dap.dll.mdb
-%%OPT_IPOD%%lib/banshee-1/Extensions/Banshee.Dap.Ipod.dll
-%%OPT_IPOD%%lib/banshee-1/Extensions/Banshee.Dap.Ipod.dll.mdb
 lib/banshee-1/Extensions/Banshee.FileSystemQueue.dll
 lib/banshee-1/Extensions/Banshee.FileSystemQueue.dll.mdb
 lib/banshee-1/Extensions/Banshee.InternetRadio.dll
@@ -74,10 +74,10 @@
 lib/banshee-1/Extensions/Banshee.PlayerMigration.dll.mdb
 lib/banshee-1/Extensions/Banshee.Podcasting.dll
 lib/banshee-1/Extensions/Banshee.Podcasting.dll.mdb
-%%OPT_IPOD%%lib/banshee-1/Extensions/ipod-sharp.dll
-%%OPT_IPOD%%lib/banshee-1/Extensions/ipod-sharp.dll.mdb
 %%OPT_IPOD%%lib/banshee-1/Extensions/ipod-sharp-ui.dll
 %%OPT_IPOD%%lib/banshee-1/Extensions/ipod-sharp-ui.dll.mdb
+%%OPT_IPOD%%lib/banshee-1/Extensions/ipod-sharp.dll
+%%OPT_IPOD%%lib/banshee-1/Extensions/ipod-sharp.dll.mdb
 lib/banshee-1/Halie.exe
 lib/banshee-1/Halie.exe.mdb
 lib/banshee-1/Hyena.Gui.dll
@@ -138,6 +138,7 @@
 share/banshee-1/audio-profiles/wav.xml
 share/banshee-1/audio-profiles/wavpack.xml
 share/banshee-1/audio-profiles/wma.xml
+share/banshee-1/icons/hicolor/128x128/devices/phone-htc-g1-white.png
 share/banshee-1/icons/hicolor/16x16/actions/media-import-audio-cd.png
 share/banshee-1/icons/hicolor/16x16/actions/media-repeat-all.png
 share/banshee-1/icons/hicolor/16x16/actions/media-repeat-none.png
@@ -202,7 +203,6 @@
 share/banshee-1/icons/hicolor/48x48/categories/podcast.png
 share/banshee-1/icons/hicolor/48x48/categories/radio.png
 share/banshee-1/icons/hicolor/48x48/devices/phone-htc-g1-white.png
-share/banshee-1/icons/hicolor/128x128/devices/phone-htc-g1-white.png
 share/banshee-1/icons/hicolor/scalable/categories/radio.svg
 %%OPT_IPOD%%share/banshee-1/icons/hicolor/scalable/devices/multimedia-player-ipod-U2-color.svg
 %%OPT_IPOD%%share/banshee-1/icons/hicolor/scalable/devices/multimedia-player-ipod-U2-monochrome.svg
@@ -270,28 +270,16 @@
 share/locale/zh_CN/LC_MESSAGES/banshee-1.mo
 share/locale/zh_HK/LC_MESSAGES/banshee-1.mo
 share/locale/zh_TW/LC_MESSAGES/banshee-1.mo
-@dirrmtry share/locale/ky/LC_MESSAGES
-@dirrm share/banshee-1/icons/hicolor/scalable/status
 @dirrm share/banshee-1/icons/hicolor/scalable/devices
 @dirrm share/banshee-1/icons/hicolor/scalable/categories
-@dirrm share/banshee-1/icons/hicolor/scalable/actions
 @dirrm share/banshee-1/icons/hicolor/scalable
-@dirrm share/banshee-1/icons/hicolor/128x128/status
-@dirrm share/banshee-1/icons/hicolor/128x128/devices
-@dirrm share/banshee-1/icons/hicolor/128x128/categories
-@dirrm share/banshee-1/icons/hicolor/128x128/actions
-@dirrm share/banshee-1/icons/hicolor/128x128
-@dirrm share/banshee-1/icons/hicolor/48x48/status
 @dirrm share/banshee-1/icons/hicolor/48x48/devices
 @dirrm share/banshee-1/icons/hicolor/48x48/categories
 @dirrm share/banshee-1/icons/hicolor/48x48/actions
 @dirrm share/banshee-1/icons/hicolor/48x48
-@dirrm share/banshee-1/icons/hicolor/32x32/status
 @dirrm share/banshee-1/icons/hicolor/32x32/devices
-@dirrm share/banshee-1/icons/hicolor/32x32/categories
 @dirrm share/banshee-1/icons/hicolor/32x32/actions
 @dirrm share/banshee-1/icons/hicolor/32x32
-@dirrm share/banshee-1/icons/hicolor/22x22/status
 @dirrm share/banshee-1/icons/hicolor/22x22/devices
 @dirrm share/banshee-1/icons/hicolor/22x22/categories
 @dirrm share/banshee-1/icons/hicolor/22x22/actions
@@ -302,6 +290,8 @@
 @dirrm share/banshee-1/icons/hicolor/16x16/categories
 @dirrm share/banshee-1/icons/hicolor/16x16/actions
 @dirrm share/banshee-1/icons/hicolor/16x16
+@dirrm share/banshee-1/icons/hicolor/128x128/devices
+@dirrm share/banshee-1/icons/hicolor/128x128
 @dirrm share/banshee-1/icons/hicolor
 @dirrm share/banshee-1/icons
 @dirrm share/banshee-1/audio-profiles
--- banshee.diff ends here ---

>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20091115131641.A14657D36>