Hello,
Here's an update to cmus-2.5.0, which adds CUE sheets support and
cdio input plugin, among other things.
I'm disabling CONFIG_DISCID, since it requires libdiscid which we
don't have yet in the ports tree. I'm disabling CONFIG_CDDB, too,
as it is an unnecessary dependency which is disabled in cdio.c for
the moment.
I will eventually get the sndio backend merged upstream, don't
worry.
Tested on amd64 and loongson.
Index: Makefile
===================================================================
RCS file: /cvs/ports/audio/cmus/Makefile,v
retrieving revision 1.6
diff -u -p -r1.6 Makefile
--- Makefile 20 Dec 2011 16:00:26 -0000 1.6
+++ Makefile 7 Nov 2012 20:44:29 -0000
@@ -4,7 +4,7 @@ COMMENT-main= ncurses-based music playe
COMMENT-flac= FLAC input plugin for cmus
COMMENT-wavpack= Wavpack input plugin for cmus
-V= 2.4.3
+V= 2.5.0
DISTNAME= cmus-v$(V)
PKGNAME-main= cmus-$(V)
PKGNAME-flac= cmus-flac-$(V)
@@ -29,9 +29,10 @@ MULTI_PACKAGES= -main -flac -wavpack
MODULES= converters/libiconv
-WANTLIB-main= c m pthread sndio ncursesw mad>=2 ${MODLIBICONV_WANTLIB}
+WANTLIB-main= c cdio cdio_cdda cue m mad>=2 ncursesw pthread sndio
+WANTLIB-main+= ${MODLIBICONV_WANTLIB}
-LIB_DEPENDS= audio/libmad
+LIB_DEPENDS= audio/libcdio audio/libcue audio/libmad
LIB_DEPENDS-flac= audio/flac audio/libogg
RUN_DEPENDS-flac= audio/cmus
@@ -44,6 +45,7 @@ USE_GMAKE= Yes
CONFIGURE_STYLE= simple
CONFIGURE_ENV= HOSTCC="${CC}" HOSTLD="${CC}" HOST_CFLAGS="${CFLAGS}"
+# Note: We're explicitly disabling CONFIG_CDDB as it gets undef'd in cdio.c
CONFIGURE_ARGS= prefix=${PREFIX} \
exampledir=${PREFIX}/share/examples/cmus \
mandir=${PREFIX}/man \
@@ -57,9 +59,10 @@ CONFIGURE_ARGS= prefix=${PREFIX} \
CONFIG_AO=n \
CONFIG_ARTS=n \
CONFIG_PULSE=n \
- CONFIG_ALSA=n \
CONFIG_ROAR=n \
- CONFIG_SNDIO=y
+ CONFIG_SNDIO=y \
+ CONFIG_DISCID=n \
+ CONFIG_CDDB=n
.if ${MACHINE_ARCH} == "arm"
CONFIGURE_ARGS+= CONFIG_TREMOR=y
Index: distinfo
===================================================================
RCS file: /cvs/ports/audio/cmus/distinfo,v
retrieving revision 1.2
diff -u -p -r1.2 distinfo
--- distinfo 20 Dec 2011 16:00:26 -0000 1.2
+++ distinfo 7 Nov 2012 20:44:29 -0000
@@ -1,5 +1,2 @@
-MD5 (cmus-v2.4.3.tar.bz2) = dUUs8AdjchTEq1RE4HYRSw==
-RMD160 (cmus-v2.4.3.tar.bz2) = 5Brb2ijbUpskVEf3vfIs+N4RimI=
-SHA1 (cmus-v2.4.3.tar.bz2) = umOkF7DfQvqaSFDdi5IqlaQm9/U=
-SHA256 (cmus-v2.4.3.tar.bz2) = yLhT1sxN5sxij+HPSPWoQasjDYGL2/ORMbadiIRLz/4=
-SIZE (cmus-v2.4.3.tar.bz2) = 204508
+SHA256 (cmus-v2.5.0.tar.bz2) = ICH6tkCIiY1i0UOVJew0XiGfWNkanpM9yF6E7aIcjd8=
+SIZE (cmus-v2.5.0.tar.bz2) = 224675
Index: files/sndio.c
===================================================================
RCS file: /cvs/ports/audio/cmus/files/sndio.c,v
retrieving revision 1.2
diff -u -p -u -r1.2 sndio.c
--- files/sndio.c 2 Oct 2011 14:11:55 -0000 1.2
+++ files/sndio.c 7 Nov 2012 20:44:29 -0000
@@ -131,7 +131,7 @@ static int sndio_close(void)
return 0;
}
-static int sndio_open(sample_format_t sf)
+static int sndio_open(sample_format_t sf, const channel_position_t
*channel_map)
{
hdl = sio_open(NULL, SIO_PLAY, 0);
if (hdl == NULL)
Index: patches/patch-configure
===================================================================
RCS file: /cvs/ports/audio/cmus/patches/patch-configure,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 patch-configure
--- patches/patch-configure 6 Sep 2011 07:10:56 -0000 1.1.1.1
+++ patches/patch-configure 7 Nov 2012 20:44:29 -0000
@@ -2,8 +2,8 @@ $OpenBSD: patch-configure,v 1.1.1.1 2011
Remove -Wredundant-decls which makes a lot of useless noise on
OpenBSD because of some problems in system headers.
(+ sndio support)
---- configure.orig Sun Jul 24 11:42:22 2011
-+++ configure Tue Aug 30 12:28:26 2011
+--- configure.orig Wed Nov 7 09:46:17 2012
++++ configure Wed Nov 7 19:18:57 2012
@@ -5,7 +5,7 @@
check_cflags()
{
@@ -13,14 +13,14 @@ OpenBSD because of some problems in syst
-Wextra -Wno-sign-compare -Wformat-security
for i in -Wdeclaration-after-statement \
-@@ -276,6 +276,16 @@ check_sun()
+@@ -307,6 +307,16 @@ check_sun()
fi
}
+check_sndio()
+{
+ case `uname -s` in
-+ *BSD)
++ OpenBSD|Bitrig)
+ check_library SNDIO "" "-lsndio"
+ return $?
+ esac
@@ -30,15 +30,15 @@ OpenBSD because of some problems in syst
check_waveout()
{
case `uname -s` in
-@@ -365,6 +375,7 @@ Optional Features: y/n
+@@ -438,6 +448,7 @@ Optional Features: y/n
CONFIG_ARTS ARTS [auto]
CONFIG_OSS Open Sound System [auto]
CONFIG_SUN Sun Audio [auto]
-+ CONFIG_SNDIO Sndio
[auto]
++ CONFIG_SNDIO Sndio [auto]
CONFIG_WAVEOUT Windows Wave Out [auto]
USE_FALLBACK_IP Use a specific IP for every unrecognized [n]
input format. Currently set to FFMPEG.
-@@ -421,6 +432,7 @@ check check_ao CONFIG_AO
+@@ -499,6 +510,7 @@ check check_ao CONFIG_AO
check check_arts CONFIG_ARTS
check check_oss CONFIG_OSS
check check_sun CONFIG_SUN
@@ -46,10 +46,10 @@ OpenBSD because of some problems in syst
check check_waveout CONFIG_WAVEOUT
check check_roar CONFIG_ROAR
-@@ -442,6 +454,6 @@ config_header config/iconv.h HAVE_ICONV
+@@ -535,6 +547,6 @@ CFLAGS="${CFLAGS} -DHAVE_CONFIG"
makefile_vars bindir datadir libdir mandir exampledir
- makefile_vars CONFIG_FLAC CONFIG_MAD CONFIG_MIKMOD CONFIG_MODPLUG CONFIG_MPC
CONFIG_VORBIS CONFIG_WAVPACK CONFIG_WAV CONFIG_MP4 CONFIG_AAC CONFIG_FFMPEG
+ makefile_vars CONFIG_CDIO CONFIG_FLAC CONFIG_MAD CONFIG_MIKMOD CONFIG_MODPLUG
CONFIG_MPC CONFIG_VORBIS CONFIG_WAVPACK CONFIG_WAV CONFIG_MP4 CONFIG_AAC
CONFIG_FFMPEG CONFIG_CUE
-makefile_vars CONFIG_ROAR CONFIG_PULSE CONFIG_ALSA CONFIG_AO CONFIG_ARTS
CONFIG_OSS CONFIG_SUN CONFIG_WAVEOUT
+makefile_vars CONFIG_ROAR CONFIG_PULSE CONFIG_ALSA CONFIG_AO CONFIG_ARTS
CONFIG_OSS CONFIG_SUN CONFIG_SNDIO CONFIG_WAVEOUT
Index: patches/patch-discid_c
===================================================================
RCS file: patches/patch-discid_c
diff -N patches/patch-discid_c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-discid_c 7 Nov 2012 20:44:29 -0000
@@ -0,0 +1,15 @@
+$OpenBSD$
+
+Hard-code /dev/rcd0c, until we make this use libdiscid.
+
+--- discid.c.orig Wed Nov 7 09:46:17 2012
++++ discid.c Wed Nov 7 21:07:19 2012
+@@ -40,7 +40,7 @@ char *get_default_cdda_device(void)
+ dev = discid_get_default_device();
+ #endif
+ if (!dev)
+- dev = "/dev/cdrom";
++ dev = "/dev/rcd0c";
+ return xstrdup(dev);
+ }
+
Index: pkg/PLIST-main
===================================================================
RCS file: /cvs/ports/audio/cmus/pkg/PLIST-main,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 PLIST-main
--- pkg/PLIST-main 6 Sep 2011 07:10:56 -0000 1.1.1.1
+++ pkg/PLIST-main 7 Nov 2012 20:44:29 -0000
@@ -3,6 +3,8 @@
@bin bin/cmus-remote
lib/cmus/
lib/cmus/ip/
+lib/cmus/ip/cdio.so
+lib/cmus/ip/cue.so
lib/cmus/ip/mad.so
lib/cmus/ip/vorbis.so
lib/cmus/ip/wav.so
@@ -19,5 +21,6 @@ share/cmus/green-mono-88.theme
share/cmus/green.theme
share/cmus/rc
share/cmus/xterm-white.theme
+share/cmus/zenburn.theme
share/examples/cmus/
share/examples/cmus/cmus-status-display