aboutsummaryrefslogtreecommitdiffstats
path: root/audio
diff options
context:
space:
mode:
authortrevor <trevor@FreeBSD.org>2000-10-09 02:53:47 +0800
committertrevor <trevor@FreeBSD.org>2000-10-09 02:53:47 +0800
commite8aeea19c1ca0d1027c5a125314cc945f66f4b8b (patch)
tree01d9e7e1eb994cc36117ef4881f3db020b3edf20 /audio
parenta5189b22d2eb3d455a94e4cc3ed77949cc9ef6c6 (diff)
downloadfreebsd-ports-gnome-e8aeea19c1ca0d1027c5a125314cc945f66f4b8b.tar.gz
freebsd-ports-gnome-e8aeea19c1ca0d1027c5a125314cc945f66f4b8b.tar.zst
freebsd-ports-gnome-e8aeea19c1ca0d1027c5a125314cc945f66f4b8b.zip
Add audio/snd, a multitracking, GUILE-extensible sound editor.
Diffstat (limited to 'audio')
-rw-r--r--audio/Makefile1
-rw-r--r--audio/snd/Makefile105
-rw-r--r--audio/snd/distinfo1
-rw-r--r--audio/snd/files/patch-audio_c73
-rw-r--r--audio/snd/files/patch-snd-file_c8
-rw-r--r--audio/snd/files/patch-snd-gmain_c11
-rw-r--r--audio/snd/files/patch-sndplay_c10
-rw-r--r--audio/snd/pkg-comment1
-rw-r--r--audio/snd/pkg-descr22
-rw-r--r--audio/snd/pkg-plist-guile21
-rw-r--r--audio/snd/pkg-plist-in32
11 files changed, 285 insertions, 0 deletions
diff --git a/audio/Makefile b/audio/Makefile
index 49120d722bbc..534425bfbe53 100644
--- a/audio/Makefile
+++ b/audio/Makefile
@@ -117,6 +117,7 @@
SUBDIR += shorten
SUBDIR += shout
SUBDIR += sidplay
+ SUBDIR += snd
SUBDIR += snowstar
SUBDIR += soundtracker
SUBDIR += sox
diff --git a/audio/snd/Makefile b/audio/snd/Makefile
new file mode 100644
index 000000000000..7e0a67916087
--- /dev/null
+++ b/audio/snd/Makefile
@@ -0,0 +1,105 @@
+# New ports collection makefile for: snd
+# Date created: 2000-10-05
+# Whom: trevor
+#
+# $FreeBSD$
+#
+
+PORTNAME= snd
+PORTVERSION= 4.6
+CATEGORIES= audio
+MASTER_SITES= ftp://ccrma-ftp.stanford.edu/pub/Lisp/ \
+ ${MASTER_SITE_SOURCEFORGE}
+MASTER_SITE_SUBDIR= ${PORTNAME}
+
+MAINTAINER= trevor@FreeBSD.org
+
+LIB_DEPENDS= intl.1:${PORTSDIR}/devel/gettext
+
+.if defined(WITHOUT_X)
+WITHOUT_GTKEXTRA= yes
+.endif
+.if !defined(WITHOUT_GTKEXTRA)
+LIB_DEPENDS+= gtkextra.10:${PORTSDIR}/x11-toolkits/gtkextra
+.endif
+.if !defined(WITHOUT_GUILE)
+LIB_DEPENDS+= guile.9:${PORTSDIR}/lang/guile
+.if !defined(WITHOUT_X)
+LIB_DEPENDS+= guilegtk-1.2:${PORTSDIR}/x11-toolkits/guile-gtk
+.endif
+.endif
+
+ALL_TARGET= audinfo snd sndinfo sndplay sndrecord sndsine
+CONFIGURE_ARGS= --with-float-samples \
+ --with-multifile
+.if !defined(WITHOUT_X)
+CONFIGURE_ARGS+= --with-gtk \
+ --with-gtkrc-colors \
+ --with-float-samples
+.endif
+.if defined(WITHOUT_GUILE)
+CONFIGURE_ARGS+= --without-guile
+.endif
+.if !defined(WITHOUT_GTKEXTRA)
+CONFIGURE_ARGS+= --with-gtk-extra
+.endif
+.if defined(WITHOUT_X)
+CONFIGURE_ARGS+= --without-gui
+.endif
+CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
+ LDFLAGS="-L${LOCALBASE}/lib"
+GNU_CONFIGURE= yes
+MAKEFILE= makefile
+PREFIX= /
+.if !defined(WITHOUT_X)
+USE_GLIB= yes
+USE_GTK= yes
+USE_XLIB= yes
+.endif
+WRKSRC= ${WRKDIR}/snd-4
+
+post-configure:
+ @${PERL} -pi -e "s:^LIBS = :LIBS = -lm:g" ${WRKSRC}/makefile
+
+do-install:
+.for i in audinfo sndinfo sndplay sndrecord sndsine
+ ${INSTALL_PROGRAM} ${WRKSRC}/${i} ${LOCALBASE}/bin
+.endfor
+.if !defined(WITHOUT_X)
+ ${INSTALL_PROGRAM} ${WRKSRC}/snd ${X11BASE}/bin
+ ${INSTALL_DATA} ${WRKSRC}/Snd.ad ${X11BASE}/lib/X11/app-defaults/
+.else
+ ${INSTALL_PROGRAM} ${WRKSRC}/snd ${LOCALBASE}/bin
+.endif
+.if !defined(NOPORTDOCS)
+ ${MKDIR} ${LOCALBASE}/share/doc/snd
+ ${RM} -f ${WRKSRC}/auto.png
+.for i in COPYING HISTORY.Snd README.Snd
+ ${INSTALL_DATA} ${WRKSRC}/${i} ${LOCALBASE}/share/doc/snd
+.endfor
+ ${INSTALL_DATA} \
+ ${WRKSRC}/*.html \
+ ${WRKSRC}/*.png \
+ ${WRKSRC}/*.txt \
+ ${LOCALBASE}/share/doc/snd
+.if !defined(WITHOUT_GUILE)
+ ${INSTALL_DATA} ${WRKSRC}/*.scm ${LOCALBASE}/share/doc/snd
+.endif
+.endif
+
+pre-build:
+ ${CP} ${PKGDIR}/pkg-plist-in ${PLIST}
+.if !defined(WITHOUT_GUILE)
+ ${CAT} ${PKGDIR}/pkg-plist-guile >> ${PLIST}
+.endif
+.if !defined(WITHOUT_X)
+ ${ECHO} "%%X11BASE%%/bin/snd" >> ${PLIST}
+ ${ECHO} "%%X11BASE%%/lib/X11/app-defaults/Snd.ad" >> ${PLIST}
+.else
+ ${ECHO} "%%LOCALBASE%%/bin/snd" >> ${PLIST}
+.endif
+.if !defined(NOPORTDOCS)
+ ${ECHO} "@dirrm %%LOCALBASE%%/share/doc/snd" >> ${PLIST}
+.endif
+
+.include <bsd.port.mk>
diff --git a/audio/snd/distinfo b/audio/snd/distinfo
new file mode 100644
index 000000000000..a15fc266338a
--- /dev/null
+++ b/audio/snd/distinfo
@@ -0,0 +1 @@
+MD5 (snd-4.6.tar.gz) = cfe4b8a8926d9762f53555c81695141b
diff --git a/audio/snd/files/patch-audio_c b/audio/snd/files/patch-audio_c
new file mode 100644
index 000000000000..7b06082a0ed6
--- /dev/null
+++ b/audio/snd/files/patch-audio_c
@@ -0,0 +1,73 @@
+--- audio.c.orig Mon Sep 18 12:08:54 2000
++++ audio.c Fri Oct 6 17:34:16 2000
+@@ -1830,7 +1830,7 @@
+ break;
+ }
+ if (audio_out == -1) return(error_exit(MUS_AUDIO_CANT_OPEN,audio_out));
+- if (ioctl(audio_out,SNDCTL_DSP_CHANNELS,&chans) == -1) return(error_exit(MUS_AUDIO_CHANNELS_NOT_AVAILABLE,audio_out));
++ if (ioctl(audio_out,SOUND_PCM_READ_CHANNELS,&chans) == -1) return(error_exit(MUS_AUDIO_CHANNELS_NOT_AVAILABLE,audio_out));
+ return(audio_out);
+ }
+
+@@ -1844,7 +1844,7 @@
+ return error_exit(MUS_AUDIO_CANT_OPEN, audio_out);
+ if ((ioctl(audio_out,SNDCTL_DSP_SETFMT,&oss_format) == -1) || (oss_format != to_oss_format(format)))
+ return(error_exit(MUS_AUDIO_FORMAT_NOT_AVAILABLE,audio_out));
+- if (ioctl(audio_out,SNDCTL_DSP_CHANNELS,&chans) == -1)
++ if (ioctl(audio_out,SOUND_PCM_READ_CHANNELS,&chans) == -1)
+ return(error_exit(MUS_AUDIO_CHANNELS_NOT_AVAILABLE,audio_out));
+ if (ioctl(audio_out,SNDCTL_DSP_SPEED,&srate) == -1)
+ return(error_exit(MUS_AUDIO_SRATE_NOT_AVAILABLE,audio_out));
+@@ -1880,7 +1880,7 @@
+ if ((ioctl(audio_out,SNDCTL_DSP_SETFMT,&oss_format) == -1) || (oss_format != to_oss_format(format)))
+ return(error_exit(MUS_AUDIO_FORMAT_NOT_AVAILABLE,audio_out));
+ #ifdef NEW_OSS
+- if (ioctl(audio_out,SNDCTL_DSP_CHANNELS,&chans) == -1) return(error_exit(MUS_AUDIO_CHANNELS_NOT_AVAILABLE,audio_out));
++ if (ioctl(audio_out,SOUND_PCM_READ_CHANNELS,&chans) == -1) return(error_exit(MUS_AUDIO_CHANNELS_NOT_AVAILABLE,audio_out));
+ #else
+ if (chans == 2) stereo = 1; else stereo = 0;
+ if ((ioctl(audio_out,SNDCTL_DSP_STEREO,&stereo) == -1) || ((chans == 2) && (stereo == 0))) return(error_exit(MUS_AUDIO_CHANNELS_NOT_AVAILABLE,audio_out));
+@@ -1947,7 +1947,7 @@
+ break;
+ }
+ if (audio_fd == -1) return(error_exit(MUS_AUDIO_NO_INPUT_AVAILABLE,-1));
+- if (ioctl(audio_fd,SNDCTL_DSP_CHANNELS,&chans) == -1) return(error_exit(MUS_AUDIO_CHANNELS_NOT_AVAILABLE,audio_fd));
++ if (ioctl(audio_fd,SOUND_PCM_READ_CHANNELS,&chans) == -1) return(error_exit(MUS_AUDIO_CHANNELS_NOT_AVAILABLE,audio_fd));
+ return(audio_fd);
+ }
+
+@@ -1961,7 +1961,7 @@
+ return(error_exit(MUS_AUDIO_CANT_OPEN, audio_fd));
+ if ((ioctl(audio_fd,SNDCTL_DSP_SETFMT,&oss_format) == -1) || (oss_format != to_oss_format(format)))
+ return(error_exit(MUS_AUDIO_FORMAT_NOT_AVAILABLE,audio_fd));
+- if (ioctl(audio_fd,SNDCTL_DSP_CHANNELS,&chans) == -1)
++ if (ioctl(audio_fd,SOUND_PCM_READ_CHANNELS,&chans) == -1)
+ return(error_exit(MUS_AUDIO_CHANNELS_NOT_AVAILABLE,audio_fd));
+ if (ioctl(audio_fd,SNDCTL_DSP_SPEED,&srate) == -1)
+ return(error_exit(MUS_AUDIO_SRATE_NOT_AVAILABLE,audio_fd));
+@@ -1992,7 +1992,6 @@
+ else
+ {
+ err = 0;
+- err = ioctl(audio_fd,SNDCTL_DSP_SETDUPLEX,&err); /* not always a no-op! */
+ /* if (err == -1) AUDIO_ERROR = MUS_AUDIO_NO_INPUT_AVAILABLE; */
+ /* this damned thing returns -1 even when full duplex is available */
+ }
+@@ -2023,7 +2022,7 @@
+ if ((ioctl(audio_fd,SNDCTL_DSP_SETFMT,&oss_format) == -1) || (oss_format != to_oss_format(format)))
+ return(error_exit(MUS_AUDIO_FORMAT_NOT_AVAILABLE,audio_fd));
+ #ifdef NEW_OSS
+- if (ioctl(audio_fd,SNDCTL_DSP_CHANNELS,&chans) == -1) return(error_exit(MUS_AUDIO_CHANNELS_NOT_AVAILABLE,audio_fd));
++ if (ioctl(audio_fd,SOUND_PCM_READ_CHANNELS,&chans) == -1) return(error_exit(MUS_AUDIO_CHANNELS_NOT_AVAILABLE,audio_fd));
+ #else
+ if (chans == 2) stereo = 1; else stereo = 0;
+ if ((ioctl(audio_fd,SNDCTL_DSP_STEREO,&stereo) == -1) || ((chans == 2) && (stereo == 0))) return(error_exit(MUS_AUDIO_CHANNELS_NOT_AVAILABLE,audio_fd));
+@@ -2467,7 +2466,7 @@
+
+ static char *synth_name(int i)
+ {
+- if ((i>0) && (i<=SNDCARD_UART401))
++ if ((i>0) && (i<=SNDCARD_NSS))
+ return(synth_names[i]);
+ return("unknown");
+ }
diff --git a/audio/snd/files/patch-snd-file_c b/audio/snd/files/patch-snd-file_c
new file mode 100644
index 000000000000..3e0f43f50fe3
--- /dev/null
+++ b/audio/snd/files/patch-snd-file_c
@@ -0,0 +1,8 @@
+--- snd-file.c.orig Mon Sep 18 12:09:20 2000
++++ snd-file.c Fri Oct 6 17:34:16 2000
+@@ -1,3 +1,5 @@
++#include <sys/param.h>
++#include <sys/mount.h>
+ #include "snd.h"
+
+ #if defined(NEXT) || defined(HAVE_SYS_DIR_H)
diff --git a/audio/snd/files/patch-snd-gmain_c b/audio/snd/files/patch-snd-gmain_c
new file mode 100644
index 000000000000..fd7fde3a5343
--- /dev/null
+++ b/audio/snd/files/patch-snd-gmain_c
@@ -0,0 +1,11 @@
+--- snd-gmain.c.orig Mon Sep 18 12:09:22 2000
++++ snd-gmain.c Sun Oct 8 06:26:00 2000
+@@ -191,7 +191,7 @@
+ #if TRAP_SEGFAULT
+ #include <setjmp.h>
+ /* stolen from scwm.c */
+-static jmp_buf envHandleEventsLoop;
++static sigjmp_buf envHandleEventsLoop;
+
+ static RETSIGTYPE segv(int ignored)
+ {
diff --git a/audio/snd/files/patch-sndplay_c b/audio/snd/files/patch-sndplay_c
new file mode 100644
index 000000000000..66b7e371073a
--- /dev/null
+++ b/audio/snd/files/patch-sndplay_c
@@ -0,0 +1,10 @@
+--- sndplay.c.orig Mon Sep 18 12:09:42 2000
++++ sndplay.c Fri Oct 6 17:34:16 2000
+@@ -18,6 +18,7 @@
+ #include <errno.h>
+
+ #include "sndlib.h"
++#include "sndlib-strings.h"
+
+ #if MACOS
+ #include <console.h>
diff --git a/audio/snd/pkg-comment b/audio/snd/pkg-comment
new file mode 100644
index 000000000000..cfd8c6b2d688
--- /dev/null
+++ b/audio/snd/pkg-comment
@@ -0,0 +1 @@
+Multitracking sound editor and utilities
diff --git a/audio/snd/pkg-descr b/audio/snd/pkg-descr
new file mode 100644
index 000000000000..c8a62d8ae863
--- /dev/null
+++ b/audio/snd/pkg-descr
@@ -0,0 +1,22 @@
+Snd is a sound editor modeled loosely after Emacs and an old, sorely-missed
+PDP-10 sound editor named Dpysnd. It can accommodate any number of sounds each
+with any number of channels, and can be customized and extended using guile and
+guile-gtk. It is under LGPL.
+
+Included with it are some command-line utilities:
+- sndinfo prints a description of a sound file.
+- sndplay plays a sound file.
+- sndrecord records sound from a microphone.
+- audinfo describes the current state of the audio hardware.
+- sndsine writes a mono NeXT/Sun sound file of a 440 Hz sine wave.
+
+To build without the GUI, define WITHOUT_X. To build without the
+enhanced file-selection dialog, define WITHOUT_GTKEXTRA. To omit
+support for GUILE, define WITHOUT_GUILE.
+
+Saving a selection from the Edit menu does not work.
+
+WWW: http://www-ccrma.stanford.edu/software/snd/
+
+Trevor Johnson
+trevor@jpj.net
diff --git a/audio/snd/pkg-plist-guile b/audio/snd/pkg-plist-guile
new file mode 100644
index 000000000000..0c0d8446e0ac
--- /dev/null
+++ b/audio/snd/pkg-plist-guile
@@ -0,0 +1,21 @@
+%%LOCALBASE%%/share/doc/snd/bell.scm
+%%LOCALBASE%%/share/doc/snd/snd-gtk.scm
+%%LOCALBASE%%/share/doc/snd/snd-test.scm
+%%LOCALBASE%%/share/doc/snd/effects.scm
+%%LOCALBASE%%/share/doc/snd/env.scm
+%%LOCALBASE%%/share/doc/snd/examp.scm
+%%LOCALBASE%%/share/doc/snd/fmv.scm
+%%LOCALBASE%%/share/doc/snd/glfft.scm
+%%LOCALBASE%%/share/doc/snd/gm.scm
+%%LOCALBASE%%/share/doc/snd/goopsnd.scm
+%%LOCALBASE%%/share/doc/snd/index.scm
+%%LOCALBASE%%/share/doc/snd/loop.scm
+%%LOCALBASE%%/share/doc/snd/marks.scm
+%%LOCALBASE%%/share/doc/snd/mix.scm
+%%LOCALBASE%%/share/doc/snd/moog.scm
+%%LOCALBASE%%/share/doc/snd/old-sndlib2scm.scm
+%%LOCALBASE%%/share/doc/snd/pqwvox.scm
+%%LOCALBASE%%/share/doc/snd/pvoc.scm
+%%LOCALBASE%%/share/doc/snd/rgb.scm
+%%LOCALBASE%%/share/doc/snd/v.scm
+%%LOCALBASE%%/share/doc/snd/zip.scm
diff --git a/audio/snd/pkg-plist-in b/audio/snd/pkg-plist-in
new file mode 100644
index 000000000000..20bbfcc1abe4
--- /dev/null
+++ b/audio/snd/pkg-plist-in
@@ -0,0 +1,32 @@
+%%LOCALBASE%%/bin/audinfo
+%%LOCALBASE%%/bin/sndinfo
+%%LOCALBASE%%/bin/sndplay
+%%LOCALBASE%%/bin/sndrecord
+%%LOCALBASE%%/bin/sndsine
+%%LOCALBASE%%/share/doc/snd/COPYING
+%%LOCALBASE%%/share/doc/snd/HISTORY.Snd
+%%LOCALBASE%%/share/doc/snd/README.Snd
+%%LOCALBASE%%/share/doc/snd/clm.html
+%%LOCALBASE%%/share/doc/snd/controls.png
+%%LOCALBASE%%/share/doc/snd/d.png
+%%LOCALBASE%%/share/doc/snd/energy.png
+%%LOCALBASE%%/share/doc/snd/env.png
+%%LOCALBASE%%/share/doc/snd/extsnd.html
+%%LOCALBASE%%/share/doc/snd/extsnd.txt
+%%LOCALBASE%%/share/doc/snd/files.png
+%%LOCALBASE%%/share/doc/snd/grfsnd.html
+%%LOCALBASE%%/share/doc/snd/grfsnd.txt
+%%LOCALBASE%%/share/doc/snd/hfft.png
+%%LOCALBASE%%/share/doc/snd/mixer.png
+%%LOCALBASE%%/share/doc/snd/n.png
+%%LOCALBASE%%/share/doc/snd/rec.png
+%%LOCALBASE%%/share/doc/snd/reclin.png
+%%LOCALBASE%%/share/doc/snd/regions.png
+%%LOCALBASE%%/share/doc/snd/s.png
+%%LOCALBASE%%/share/doc/snd/snd-contents.html
+%%LOCALBASE%%/share/doc/snd/snd.html
+%%LOCALBASE%%/share/doc/snd/snd.txt
+%%LOCALBASE%%/share/doc/snd/snd1.html
+%%LOCALBASE%%/share/doc/snd/sndlib.html
+%%LOCALBASE%%/share/doc/snd/sndlib.txt
+%%LOCALBASE%%/share/doc/snd/title.png