summaryrefslogtreecommitdiff
path: root/audio/xmp
diff options
context:
space:
mode:
authorshattered <shattered@pkgsrc.org>2013-11-16 07:41:02 +0000
committershattered <shattered@pkgsrc.org>2013-11-16 07:41:02 +0000
commit832d2ffcd8aec6b290caed83dc2f4cae276d597f (patch)
treeff2dc294b1d6a726c10ac5cdecc8c0a2175ff94f /audio/xmp
parent766ca2ba859310d74500014ad0279ab490377aec (diff)
downloadpkgsrc-832d2ffcd8aec6b290caed83dc2f4cae276d597f.tar.gz
Update to 4.0.6. Changes:
- Rewrite player to use libxmp 4.0 - Give Pulseaudio higher priority than ALSA - Give ALSA output higher priority than OSS - Fix native-endian coreaudio output - Fix module-specifc flags to override built-in quirks - Fix loop when skipping to first file and it's not playable - Add commands '<' and '>' to jump to previous/next sequence - Add command 'z' to toggle the subsong explorer on/off - Add option -z <num> to play a specified sequence - Add option -Z to play all sequences in module - Add option --loop-all to loop over entire module list
Diffstat (limited to 'audio/xmp')
-rw-r--r--audio/xmp/Makefile6
-rw-r--r--audio/xmp/distinfo13
-rw-r--r--audio/xmp/options.mk9
-rw-r--r--audio/xmp/patches/patch-etc_Makefile43
-rw-r--r--audio/xmp/patches/patch-src_drivers_netbsd.c34
-rw-r--r--audio/xmp/patches/patch-src_sound_oss.c13
6 files changed, 85 insertions, 33 deletions
diff --git a/audio/xmp/Makefile b/audio/xmp/Makefile
index 5048c30b9f8..64744ffffad 100644
--- a/audio/xmp/Makefile
+++ b/audio/xmp/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.37 2013/02/09 22:11:34 ryoon Exp $
+# $NetBSD: Makefile,v 1.38 2013/11/16 07:41:02 shattered Exp $
-DISTNAME= xmp-3.4.1
-PKGREVISION= 7
+DISTNAME= xmp-4.0.6
CATEGORIES= audio
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=xmp/}
@@ -27,4 +26,5 @@ INSTALL_MAKE_FLAGS+= INSTALL=${INSTALL:Q}
.include "options.mk"
+.include "../../audio/libxmp/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
diff --git a/audio/xmp/distinfo b/audio/xmp/distinfo
index 8c3a60faab8..df5359991c8 100644
--- a/audio/xmp/distinfo
+++ b/audio/xmp/distinfo
@@ -1,7 +1,8 @@
-$NetBSD: distinfo,v 1.13 2011/11/26 21:10:03 shattered Exp $
+$NetBSD: distinfo,v 1.14 2013/11/16 07:41:02 shattered Exp $
-SHA1 (xmp-3.4.1.tar.gz) = 2883818ddc66ba691b4e7e834be13e800f701021
-RMD160 (xmp-3.4.1.tar.gz) = be007df5102cce9dcd3367097d65ecb535b7d25e
-Size (xmp-3.4.1.tar.gz) = 858787 bytes
-SHA1 (patch-etc_Makefile) = 86844aab3f490f857c92096e088df9463c2617d6
-SHA1 (patch-src_drivers_netbsd.c) = 39196154d1a52d3962540e6f2d175f0e9280449c
+SHA1 (xmp-4.0.6.tar.gz) = 61a7d68e4c37e7407bd35c783821bfbc2b639c87
+RMD160 (xmp-4.0.6.tar.gz) = 1eb6834cefd450d88de9b018e14ec4f88b8c015b
+Size (xmp-4.0.6.tar.gz) = 208541 bytes
+SHA1 (patch-etc_Makefile) = 5816b82a6253a627b39ff2ca262bfb5675ca97e3
+SHA1 (patch-src_drivers_netbsd.c) = eb3b77cafc86dc9fba298c5bdfbeb0b889d9ea9c
+SHA1 (patch-src_sound_oss.c) = 251a09075ade185e33938be67776e7740473a6a5
diff --git a/audio/xmp/options.mk b/audio/xmp/options.mk
index 69d492af057..268074aef20 100644
--- a/audio/xmp/options.mk
+++ b/audio/xmp/options.mk
@@ -1,6 +1,7 @@
-# $NetBSD: options.mk,v 1.2 2011/04/05 05:22:52 rxg Exp $
+# $NetBSD: options.mk,v 1.3 2013/11/16 07:41:02 shattered Exp $
PKG_OPTIONS_VAR= PKG_OPTIONS.xmp
+# XXX configure.ac is broken, you cannot disable oss and alsa at the moment.
PKG_SUPPORTED_OPTIONS= alsa arts esound nas oss pulseaudio
.include "../../mk/bsd.prefs.mk"
@@ -42,10 +43,12 @@ CONFIGURE_ARGS+=--enable-nas
# Oss support
.if !empty(PKG_OPTIONS:Moss)
-# empty
+. include "../../mk/oss.buildlink3.mk"
+LIBS+= ${LIBOSSAUDIO}
+CPPFLAGS+= -DDEVOSSAUDIO="\"${DEVOSSAUDIO}\""
+CPPFLAGS+= -DDEVOSSSOUND="\"${DEVOSSSOUND}\""
.else
CONFIGURE_ARGS+=--disable-oss
-CONFIGURE_ARGS+=--disable-oss-sequencer
.endif
# Pulseaudio support
diff --git a/audio/xmp/patches/patch-etc_Makefile b/audio/xmp/patches/patch-etc_Makefile
index 260af7ad06d..9461a71e851 100644
--- a/audio/xmp/patches/patch-etc_Makefile
+++ b/audio/xmp/patches/patch-etc_Makefile
@@ -1,19 +1,28 @@
-$NetBSD: patch-etc_Makefile,v 1.1 2011/04/05 05:22:52 rxg Exp $
+$NetBSD: patch-etc_Makefile,v 1.2 2013/11/16 07:41:02 shattered Exp $
---- etc/Makefile.orig 2010-01-09 22:34:20.000000000 +0000
-+++ etc/Makefile
-@@ -4,10 +4,10 @@ ETC_PATH = etc
+--- src/Makefile.in.orig 2013-05-19 14:44:09.000000000 +0000
++++ src/Makefile.in
+@@ -509,18 +509,18 @@ uninstall-man1:
+ dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
+ install-pkgsysconfDATA: $(pkgsysconf_DATA)
+ @$(NORMAL_INSTALL)
+- @list='$(pkgsysconf_DATA)'; test -n "$(pkgsysconfdir)" || list=; \
++ @list='$(pkgsysconf_DATA)'; test -n "$(datarootdir)/examples/xmp" || list=; \
+ if test -n "$$list"; then \
+- echo " $(MKDIR_P) '$(DESTDIR)$(pkgsysconfdir)'"; \
+- $(MKDIR_P) "$(DESTDIR)$(pkgsysconfdir)" || exit 1; \
++ echo " $(MKDIR_P) '$(DESTDIR)$(datarootdir)/examples/xmp/'"; \
++ $(MKDIR_P) "$(DESTDIR)$(datarootdir)/examples/xmp/" || exit 1; \
+ fi; \
+ for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; \
+ done | $(am__base_list) | \
+ while read files; do \
+- echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgsysconfdir)'"; \
+- $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgsysconfdir)" || exit $$?; \
++ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(datarootdir)/examples/xmp/'"; \
++ $(INSTALL_DATA) $$files "$(DESTDIR)$(datarootdir)/examples/xmp/" || exit $$?; \
+ done
- install-etc:
- @[ -d $(DESTDIR)$(SYSCONFDIR) ] || mkdir -p $(DESTDIR)$(SYSCONFDIR)
-- @echo "Installing xmp.conf in $(SYSCONFDIR)"
-- @$(INSTALL_DATA) $(ETC_PATH)/xmp.conf $(DESTDIR)$(SYSCONFDIR)/
-- @echo "Installing modules.conf in $(SYSCONFDIR)"
-- @$(INSTALL_DATA) $(ETC_PATH)/modules.conf $(DESTDIR)$(SYSCONFDIR)/
-+ @echo "Installing xmp.conf in ${DESTDIR}$(datarootdir)/examples/xmp"
-+ @$(INSTALL_DATA) $(ETC_PATH)/xmp.conf $(DESTDIR)$(datarootdir)/examples/xmp/
-+ @echo "Installing modules.conf in ${DESTDIR}$(datarootdir)/examples/xmp"
-+ @$(INSTALL_DATA) $(ETC_PATH)/modules.conf $(DESTDIR)$(datarootdir)/examples/xmp/
-
- dist-etc:
- mkdir -p $(DIST)/$(ETC_PATH)
+ uninstall-pkgsysconfDATA:
diff --git a/audio/xmp/patches/patch-src_drivers_netbsd.c b/audio/xmp/patches/patch-src_drivers_netbsd.c
index 36b7565d878..832e9f4a6ad 100644
--- a/audio/xmp/patches/patch-src_drivers_netbsd.c
+++ b/audio/xmp/patches/patch-src_drivers_netbsd.c
@@ -1,8 +1,34 @@
-$NetBSD: patch-src_drivers_netbsd.c,v 1.1 2011/04/05 05:22:52 rxg Exp $
+$NetBSD: patch-src_drivers_netbsd.c,v 1.2 2013/11/16 07:41:02 shattered Exp $
---- src/drivers/netbsd.c.orig 2010-01-09 22:34:20.000000000 +0000
-+++ src/drivers/netbsd.c
-@@ -174,7 +174,7 @@ static void bufdump(struct xmp_context *
+--- src/sound_netbsd.c.orig 2013-04-06 13:38:02.000000000 +0000
++++ src/sound_netbsd.c
+@@ -68,21 +68,23 @@ static int init(struct options *options)
+
+ AUDIO_INITINFO(&ainfo);
+
++ ainfo.mode = AUMODE_PLAY_ALL;
+ ainfo.play.sample_rate = options->rate;
+ ainfo.play.channels = options->format & XMP_FORMAT_MONO ? 1 : 2;
+
+ if (options->format & XMP_FORMAT_8BIT) {
+ ainfo.play.precision = 8;
+- ainfo.play.precision = AUDIO_ENCODING_ULINEAR;
++ ainfo.play.encoding = AUDIO_ENCODING_ULINEAR;
+ options->format |= XMP_FORMAT_UNSIGNED;
+ } else {
+ ainfo.play.precision = 16;
+- ainfo.play.precision = AUDIO_ENCODING_SLINEAR;
++ ainfo.play.encoding = AUDIO_ENCODING_SLINEAR;
+ options->format &= ~XMP_FORMAT_UNSIGNED;
+ }
+
+ ainfo.play.gain = gain;
+ ainfo.play.buffer_size = bsize;
++ ainfo.blocksize = 0;
+
+ if (ioctl(audio_fd, AUDIO_SETINFO, &ainfo) == -1) {
+ close(audio_fd);
+@@ -99,7 +101,7 @@ static void play(void *b, int i)
while (i) {
if ((j = write(audio_fd, b, i)) > 0) {
i -= j;
diff --git a/audio/xmp/patches/patch-src_sound_oss.c b/audio/xmp/patches/patch-src_sound_oss.c
new file mode 100644
index 00000000000..29de2e45fc1
--- /dev/null
+++ b/audio/xmp/patches/patch-src_sound_oss.c
@@ -0,0 +1,13 @@
+$NetBSD: patch-src_sound_oss.c,v 1.1 2013/11/16 07:41:02 shattered Exp $
+
+--- src/sound_oss.c.orig 2013-04-06 13:38:02.000000000 +0000
++++ src/sound_oss.c
+@@ -109,7 +109,7 @@ static void setaudio(int *rate, int *for
+ static int init(struct options *options)
+ {
+ char **parm = options->driver_parm;
+- static const char *dev_audio[] = { "/dev/dsp", "/dev/sound/dsp" };
++ static const char *dev_audio[] = { DEVOSSAUDIO, "/dev/sound/dsp" };
+ audio_buf_info info;
+ static char buf[80];
+ int i;