aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorache <ache@FreeBSD.org>1996-11-12 07:17:44 +0800
committerache <ache@FreeBSD.org>1996-11-12 07:17:44 +0800
commitaaafc362763c322da18719b8582b4775be2794b6 (patch)
tree9ef85c4c05e36a214d10a626355608f8977f89db
parent551fab9783bff86a85e130ba214603fd875c4dd3 (diff)
downloadfreebsd-ports-gnome-aaafc362763c322da18719b8582b4775be2794b6.tar.gz
freebsd-ports-gnome-aaafc362763c322da18719b8582b4775be2794b6.tar.zst
freebsd-ports-gnome-aaafc362763c322da18719b8582b4775be2794b6.zip
Move from net, speak freely understands VAT/RTP well
-rw-r--r--audio/speak_freely/Makefile50
-rw-r--r--audio/speak_freely/distinfo1
-rw-r--r--audio/speak_freely/files/patch-aa219
-rw-r--r--audio/speak_freely/files/patch-ac14
-rw-r--r--audio/speak_freely/files/patch-ad74
-rw-r--r--audio/speak_freely/files/patch-ae101
-rw-r--r--audio/speak_freely/pkg-comment1
-rw-r--r--audio/speak_freely/pkg-descr8
-rw-r--r--audio/speak_freely/pkg-plist13
-rw-r--r--mbone/speak_freely/Makefile50
-rw-r--r--mbone/speak_freely/distinfo1
-rw-r--r--mbone/speak_freely/files/patch-aa219
-rw-r--r--mbone/speak_freely/files/patch-ac14
-rw-r--r--mbone/speak_freely/files/patch-ad74
-rw-r--r--mbone/speak_freely/files/patch-ae101
-rw-r--r--mbone/speak_freely/pkg-comment1
-rw-r--r--mbone/speak_freely/pkg-descr8
-rw-r--r--mbone/speak_freely/pkg-plist13
18 files changed, 962 insertions, 0 deletions
diff --git a/audio/speak_freely/Makefile b/audio/speak_freely/Makefile
new file mode 100644
index 000000000000..7114618568d0
--- /dev/null
+++ b/audio/speak_freely/Makefile
@@ -0,0 +1,50 @@
+# New ports collection makefile for: speak_freely
+# Original WWW site: http://www.fourmilab.ch/speakfree/unix/index.html
+# Version required: 6.1b
+# Date created: 18 Apr 1996
+# Whom: ache
+#
+# $Id: Makefile,v 1.5 1996/10/25 16:49:22 ache Exp $
+#
+
+DISTNAME= speak_freely-6.1b
+CATEGORIES+= net audio security
+MASTER_SITES= http://www.fourmilab.ch/speakfree/unix/
+
+MAINTAINER= ache@FreeBSD.ORG
+
+LIB_DEPENDS= gsm\\.1\\.0:${PORTSDIR}/audio/gsm
+
+UTILS= sfspeaker sfmike sflwl
+DEMNS= sfecho sflwld
+DDEMNS= sfvod
+SFLIB= ${PREFIX}/lib/speak_freely
+
+do-install:
+ if [ ! -d ${SFLIB} ]; then \
+ install -d -o ${BINOWN} -g ${BINGRP} -m 755 ${SFLIB}; \
+ fi
+ cd ${WRKSRC}; \
+ $(INSTALL_DATA) ring.au ${SFLIB}
+ cd ${WRKSRC}; \
+ for p in ${UTILS}; do \
+ $(INSTALL_PROGRAM) $$p ${PREFIX}/bin; \
+ $(INSTALL_MAN) $$p.1 ${PREFIX}/man/man1; \
+ done;
+ cd ${WRKSRC}; \
+ for p in ${DEMNS}; do \
+ $(INSTALL_PROGRAM) $$p ${PREFIX}/sbin; \
+ $(INSTALL_MAN) $$p.1 ${PREFIX}/man/man1; \
+ done;
+ cd ${WRKSRC}; \
+ for p in ${DDEMNS}; do \
+ $(INSTALL_SCRIPT) $$p ${PREFIX}/sbin; \
+ $(INSTALL_MAN) $$p.1 ${PREFIX}/man/man1; \
+ done;
+.if !defined(NOMANCOMPRESS)
+ for p in ${UTILS} ${DEMNS} ${DDEMNS}; do \
+ gzip -9nf ${PREFIX}/man/man1/$$p.1; \
+ done
+.endif
+
+.include <bsd.port.mk>
diff --git a/audio/speak_freely/distinfo b/audio/speak_freely/distinfo
new file mode 100644
index 000000000000..32484b10de6a
--- /dev/null
+++ b/audio/speak_freely/distinfo
@@ -0,0 +1 @@
+MD5 (speak_freely-6.1b.tar.gz) = 366b66297186dc7e02afbb5227a33ec8
diff --git a/audio/speak_freely/files/patch-aa b/audio/speak_freely/files/patch-aa
new file mode 100644
index 000000000000..40369b1b9895
--- /dev/null
+++ b/audio/speak_freely/files/patch-aa
@@ -0,0 +1,219 @@
+*** Makefile.orig Mon Aug 12 15:52:16 1996
+--- Makefile Fri Oct 25 17:50:11 1996
+***************
+*** 11,18 ****
+ #LFLAGS = -laudio -lcurses -lm
+
+ # SunOS 4.1.x
+! CC = cc -fsingle -DOLDCC
+! LFLAGS = -lcurses -ltermcap -lm
+
+ # Solaris 2.x courtesy of Hans Werner Strube (strube@physik3.gwdg.de)
+ # (-fsingle is needed for pre-4.0 compilers and is ignored by 4.0 in
+--- 11,18 ----
+ #LFLAGS = -laudio -lcurses -lm
+
+ # SunOS 4.1.x
+! #CC = cc -fsingle -DOLDCC
+! #LFLAGS = -lcurses -ltermcap -lm
+
+ # Solaris 2.x courtesy of Hans Werner Strube (strube@physik3.gwdg.de)
+ # (-fsingle is needed for pre-4.0 compilers and is ignored by 4.0 in
+***************
+*** 35,42 ****
+ # Depending on how your driver handles non-blocking I/O,
+ # you may also have to add -DAUDIO_BLOCKING to the
+ # CCFLAGS line.
+! #CCFLAGS = -DM_LITTLE_ENDIAN
+! #LFLAGS = -lcurses -ltermcap -lcompat -lm
+
+ # Linux 1.x, courtesy of KeyJ Phade (phade@powerweb.de)
+ #
+--- 35,42 ----
+ # Depending on how your driver handles non-blocking I/O,
+ # you may also have to add -DAUDIO_BLOCKING to the
+ # CCFLAGS line.
+! CCFLAGS = -DM_LITTLE_ENDIAN
+! LFLAGS = -lcurses -ltermcap -lcompat -lm
+
+ # Linux 1.x, courtesy of KeyJ Phade (phade@powerweb.de)
+ #
+***************
+*** 62,73 ****
+ #CCFLAGS = -DHEWLETT_PACKARD -DOLDCC
+ #LFLAGS = -lAlib -lcurses -ltermcap -lm
+
+ # Where Perl is located on your system. This is used to make
+ # a directly-executable version of sfvod.
+! PERL = /usr/local/bin/perl
+
+ # If your audio hardware is half duplex, uncomment the next line
+! #DUPLEX = -DHALF_DUPLEX
+
+ # If your getdomainname() does not return the DNS domainname, define:
+ #DOMAIN=-DMYDOMAIN=\"somedomain.net\"
+--- 62,75 ----
+ #CCFLAGS = -DHEWLETT_PACKARD -DOLDCC
+ #LFLAGS = -lAlib -lcurses -ltermcap -lm
+
++ PREFIX=/usr/local
++
+ # Where Perl is located on your system. This is used to make
+ # a directly-executable version of sfvod.
+! PERL = /usr/bin/perl
+
+ # If your audio hardware is half duplex, uncomment the next line
+! DUPLEX = -DHALF_DUPLEX
+
+ # If your getdomainname() does not return the DNS domainname, define:
+ #DOMAIN=-DMYDOMAIN=\"somedomain.net\"
+***************
+*** 96,106 ****
+ CARGS = -DInternet_Port=$(INTERNET_PORT)
+
+ #DEBUG = -g -DHEXDUMP
+! DEBUG = -O
+
+ # Compiler flags
+
+! CFLAGS = $(DEBUG) -Iadpcm -Ilpc -Igsm/inc -Imd5 -Iidea -Ilibdes $(CARGS) -DRelno=$(REL) $(DUPLEX) $(CCFLAGS) $(DOMAIN)
+
+ PROGRAMS = sfspeaker sfmike sflwld sflwl sfecho sfvod
+
+--- 98,116 ----
+ CARGS = -DInternet_Port=$(INTERNET_PORT)
+
+ #DEBUG = -g -DHEXDUMP
+! DEBUG =
+!
+! .if exists(/usr/lib/libdes.a)
+! LDES=-ldes
+! IDES=
+! .else
+! LDES=libdes/libdes.a
+! IDES=-Ilibdes
+! .endif
+
+ # Compiler flags
+
+! CFLAGS += $(DEBUG) -Iadpcm -Ilpc -Iidea $(IDES) -I/usr/include -I${PREFIX}/include $(CARGS) -DRelno=$(REL) $(DUPLEX) $(CCFLAGS) $(DOMAIN)
+
+ PROGRAMS = sfspeaker sfmike sflwld sflwl sfecho sfvod
+
+***************
+*** 108,120 ****
+
+ SPKROBJS = speaker.o codecs.o deskey.o g711.o rate.o rtpacket.o soundbyte.o ulaw.o usleep.o vatpkt.o vox.o hp_audio.o
+
+! sfspeaker: $(SPKROBJS) adpcmlib.o lpclib.o lpc10lib.o gsmlib.o deslib.o md5lib.o idealib.o libdes.o xdsub.o
+! $(CC) $(SPKROBJS) adpcm/adpcm-u.o des/des.o md5/md5.o idea/idea.o lpc10/liblpc10.a gsm/lib/libgsm.a lpc/lpc.o xdsub.o libdes/libdes.a $(LFLAGS) -o sfspeaker
+
+ MIKEOBJS = mike.o codecs.o deskey.o g711.o rate.o rtpacket.o soundbyte.o ulaw.o usleep.o vatpkt.o xdsub.o hp_audio.o
+
+! sfmike: $(MIKEOBJS) adpcmlib.o lpclib.o lpc10lib.o gsmlib.o deslib.o md5lib.o idealib.o libdes.o
+! $(CC) $(MIKEOBJS) adpcm/adpcm-u.o des/des.o md5/md5.o idea/idea.o -lm lpc10/liblpc10.a gsm/lib/libgsm.a lpc/lpc.o libdes/libdes.a $(LFLAGS) -o sfmike
+
+ LWLDOBJS = lwld.o xdsub.o
+
+--- 118,130 ----
+
+ SPKROBJS = speaker.o codecs.o deskey.o g711.o rate.o rtpacket.o soundbyte.o ulaw.o usleep.o vatpkt.o vox.o hp_audio.o
+
+! sfspeaker: $(SPKROBJS) adpcmlib.o lpclib.o lpc10lib.o deslib.o idealib.o libdes.o xdsub.o
+! $(CC) $(SPKROBJS) adpcm/adpcm-u.o des/des.o idea/idea.o lpc10/liblpc10.a -L${PREFIX}/lib -lgsm lpc/lpc.o xdsub.o -lmd $(LDES) $(LFLAGS) -o sfspeaker
+
+ MIKEOBJS = mike.o codecs.o deskey.o g711.o rate.o rtpacket.o soundbyte.o ulaw.o usleep.o vatpkt.o xdsub.o hp_audio.o
+
+! sfmike: $(MIKEOBJS) adpcmlib.o lpclib.o lpc10lib.o deslib.o idealib.o libdes.o
+! $(CC) $(MIKEOBJS) adpcm/adpcm-u.o des/des.o idea/idea.o lpc10/liblpc10.a -lm -L${PREFIX}/lib -lgsm lpc/lpc.o -lmd $(LDES) $(LFLAGS) -o sfmike
+
+ LWLDOBJS = lwld.o xdsub.o
+
+***************
+*** 128,135 ****
+
+ ECHOOBJS = echo.o codecs.o g711.o rtpacket.o ulaw.o xdsub.o
+
+! sfecho: $(ECHOOBJS) md5lib.o
+! $(CC) $(ECHOOBJS) md5/md5.o adpcm/adpcm-u.o lpc/lpc.o $(LFLAGS) -o sfecho
+
+ sfvod: sfvod.pl
+ echo \#\! $(PERL) >sfvod
+--- 138,145 ----
+
+ ECHOOBJS = echo.o codecs.o g711.o rtpacket.o ulaw.o xdsub.o
+
+! sfecho: $(ECHOOBJS)
+! $(CC) $(ECHOOBJS) adpcm/adpcm-u.o lpc/lpc.o -lmd $(LFLAGS) -o sfecho
+
+ sfvod: sfvod.pl
+ echo \#\! $(PERL) >sfvod
+***************
+*** 145,155 ****
+ chmod 755 sfvod
+
+ adpcmlib.o:
+! ( echo "Building ADPCM library."; cd adpcm ; make CC="$(CC)" )
+ echo "ADPCM" >adpcmlib.o
+
+ libdes.o:
+ ( echo "Building LIBDES library."; cd libdes ; make -f Makefile.sf CC="$(CC) $(CCFLAGS) $(DEBUG)" )
+ echo "LIBDES" >libdes.o
+
+ lpclib.o:
+--- 155,167 ----
+ chmod 755 sfvod
+
+ adpcmlib.o:
+! ( echo "Building ADPCM library."; cd adpcm ; make CC="$(CC) $(CCFLAGS)" )
+ echo "ADPCM" >adpcmlib.o
+
+ libdes.o:
++ .if !exists(/usr/lib/libdes.a)
+ ( echo "Building LIBDES library."; cd libdes ; make -f Makefile.sf CC="$(CC) $(CCFLAGS) $(DEBUG)" )
++ .endif
+ echo "LIBDES" >libdes.o
+
+ lpclib.o:
+***************
+*** 161,167 ****
+ echo "LPC" >lpc10lib.o
+
+ gsmlib.o:
+! ( echo "Building GSM library."; cd gsm ; make CC="$(CC)" )
+ echo "GSM" >gsmlib.o
+
+ deslib.o:
+--- 173,179 ----
+ echo "LPC" >lpc10lib.o
+
+ gsmlib.o:
+! ( echo "Building GSM library."; cd gsm ; make CC="$(CC) $(CCFLAGS)" )
+ echo "GSM" >gsmlib.o
+
+ deslib.o:
+***************
+*** 169,179 ****
+ echo "DES" >deslib.o
+
+ md5lib.o:
+! ( echo "Building MD5 library."; cd md5 ; make CC="$(CC)" )
+ echo "MD5" >md5lib.o
+
+ idealib.o:
+! ( echo "Building IDEA library."; cd idea ; make CC="$(CC)" )
+ echo "IDEA" >idealib.o
+
+ codecs.o: codecs.c speakfree.h
+--- 181,191 ----
+ echo "DES" >deslib.o
+
+ md5lib.o:
+! ( echo "Building MD5 library."; cd md5 ; make CC="$(CC) $(CCFLAGS)" )
+ echo "MD5" >md5lib.o
+
+ idealib.o:
+! ( echo "Building IDEA library."; cd idea ; make CC="$(CC) $(CCFLAGS)" )
+ echo "IDEA" >idealib.o
+
+ codecs.o: codecs.c speakfree.h
diff --git a/audio/speak_freely/files/patch-ac b/audio/speak_freely/files/patch-ac
new file mode 100644
index 000000000000..e4c8ee876155
--- /dev/null
+++ b/audio/speak_freely/files/patch-ac
@@ -0,0 +1,14 @@
+*** mike.c.orig Tue Apr 23 14:45:52 1996
+--- mike.c Fri Oct 25 19:11:15 1996
+***************
+*** 687,692 ****
+--- 687,695 ----
+ (sb->buffer.buffer_len > 16)) {
+ pktlen += sizeof(sb->sendinghost);
+ }
++ /* must stay in network order for debugging output */
++ sb->compression = htonl(sb->compression);
++ sb->buffer.buffer_len = htonl(sb->buffer.buffer_len);
+ }
+ }
+ }
diff --git a/audio/speak_freely/files/patch-ad b/audio/speak_freely/files/patch-ad
new file mode 100644
index 000000000000..4abcc937427b
--- /dev/null
+++ b/audio/speak_freely/files/patch-ad
@@ -0,0 +1,74 @@
+*** adpcm/Makefile.bak Fri Sep 1 14:58:19 1995
+--- adpcm/Makefile Fri Oct 25 18:55:46 1996
+***************
+*** 1,7 ****
+ #
+ # Makefile for adpcm and test programs
+ # -------------------
+! CFLAGS=-O -I..
+ # May need this on a sun:
+ #CFLAGS=-O -I/usr/demo/SOUND
+
+--- 1,7 ----
+ #
+ # Makefile for adpcm and test programs
+ # -------------------
+! CFLAGS+=-I..
+ # May need this on a sun:
+ #CFLAGS=-O -I/usr/demo/SOUND
+
+*** des/Makefile.bak Thu Nov 2 22:38:58 1995
+--- des/Makefile Fri Oct 25 18:55:46 1996
+***************
+*** 1,4 ****
+! CFLAGS=-O
+
+ all: des.o
+
+--- 1,4 ----
+! #CFLAGS=-O
+
+ all: des.o
+
+*** idea/Makefile.bak Wed Aug 2 22:39:19 1995
+--- idea/Makefile Fri Oct 25 18:55:46 1996
+***************
+*** 6,13 ****
+
+ # Compiler flags
+
+! CC = cc
+! CFLAGS = -O
+
+ all: idea.o
+
+--- 6,13 ----
+
+ # Compiler flags
+
+! #CC = cc
+! #CFLAGS = -O
+
+ all: idea.o
+
+*** libdes/Makefile.bak Wed Apr 17 23:49:33 1996
+--- libdes/Makefile Fri Oct 25 18:55:46 1996
+***************
+*** 30,37 ****
+
+ OPTS= $(OPTS0) $(OPTS1) $(OPTS2)
+
+! CC=cc
+! CFLAGS= -O $(OPTS) $(CFLAG)
+
+ #CC=gcc
+ #CFLAGS= -O3 -fomit-frame-pointer $(OPTS) $(CFLAG)
+--- 30,37 ----
+
+ OPTS= $(OPTS0) $(OPTS1) $(OPTS2)
+
+! #CC=cc
+! CFLAGS+= $(OPTS) $(CFLAG)
+
+ #CC=gcc
+ #CFLAGS= -O3 -fomit-frame-pointer $(OPTS) $(CFLAG)
diff --git a/audio/speak_freely/files/patch-ae b/audio/speak_freely/files/patch-ae
new file mode 100644
index 000000000000..63da3ff0d3cb
--- /dev/null
+++ b/audio/speak_freely/files/patch-ae
@@ -0,0 +1,101 @@
+*** soundbyte.c.orig Mon Apr 8 17:39:41 1996
+--- soundbyte.c Fri Oct 25 20:36:06 1996
+***************
+*** 96,101 ****
+--- 96,106 ----
+ }
+ #endif
+
++ #ifndef sun
++ #ifdef HALF_DUPLEX
++ static int oldvol = -1;
++ #endif
++ #endif
+
+ /* SOUNDINIT -- Open the sound peripheral and initialise for
+ access. Return TRUE if successful, FALSE
+***************
+*** 145,150 ****
+--- 150,170 ----
+ }
+ ioctl(Audio_fd, AUDIO_SETINFO, &Audio_info);
+ #endif
++ #ifndef sun
++ #ifdef HALF_DUPLEX
++ if (iomode == O_RDONLY) {
++ if (oldvol == -1)
++ oldvol = soundgetvol();
++ soundplayvol(0);
++ } else if ( iomode == O_WRONLY
++ && oldvol != -1
++ ) {
++ if (soundgetvol() == 0)
++ soundplayvol(oldvol);
++ oldvol = -1;
++ }
++ #endif
++ #endif
+ return TRUE;
+ }
+ if (errno != EINTR) {
+***************
+*** 160,165 ****
+--- 180,194 ----
+ void soundterm()
+ {
+ if (audiof >= 0) {
++ #ifndef sun
++ #ifdef HALF_DUPLEX
++ if (oldvol != -1) {
++ if (soundgetvol() == 0)
++ soundplayvol(oldvol);
++ oldvol = -1;
++ }
++ #endif
++ #endif
+ if (close(audiof) < 0) {
+ perror("closing audio device");
+ }
+***************
+*** 210,219 ****
+
+ arg = (value << 8) | value;
+
+! if (ioctl(Audio_fd, MIXER_WRITE(SOUND_MIXER_PCM), &arg) < 0)
+! perror("SOUND_MIXER_PCM");
+ #endif
+ }
+
+ /* SOUNDRECGAIN -- Set recording gain from 0 (minimum) to 100 (maximum). */
+
+--- 239,268 ----
+
+ arg = (value << 8) | value;
+
+! if (ioctl(Audio_fd, SOUND_MIXER_WRITE_PCM, &arg) < 0)
+! perror("SOUND_MIXER_WRITE_PCM");
+ #endif
+ }
++
++ #ifndef sun
++ #ifdef HALF_DUPLEX
++
++ /* SOUNDGETVOL -- Get current playback volume. */
++
++ int soundgetvol()
++ {
++ int arg, v1, v2;
++
++ if (ioctl(Audio_fd, SOUND_MIXER_READ_PCM, &arg) < 0) {
++ perror("SOUND_MIXER_READ_PCM");
++ return -1;
++ }
++ v1 = arg & 0xFF;
++ v2 = (arg >> 8) & 0xFF;
++ return (v1 > v2) ? v1 : v2;
++ }
++ #endif
++ #endif
+
+ /* SOUNDRECGAIN -- Set recording gain from 0 (minimum) to 100 (maximum). */
+
diff --git a/audio/speak_freely/pkg-comment b/audio/speak_freely/pkg-comment
new file mode 100644
index 000000000000..c9c3ae747508
--- /dev/null
+++ b/audio/speak_freely/pkg-comment
@@ -0,0 +1 @@
+Voice Communication Over Data Networks.
diff --git a/audio/speak_freely/pkg-descr b/audio/speak_freely/pkg-descr
new file mode 100644
index 000000000000..f66a6d8b6f1f
--- /dev/null
+++ b/audio/speak_freely/pkg-descr
@@ -0,0 +1,8 @@
+ Speak Freely allows users of a variety of Unix and Unix-
+ like workstations equipped with audio hardware connected
+ by a network to converse, using the audio input and output
+ facilities of the workstation to digitise and later recon-
+ struct the sound and the network to relay sound packets.
+ Optional compression is provided, allowing conversations
+ over relatively low-bandwidth Internet links as well as
+ local area networks.
diff --git a/audio/speak_freely/pkg-plist b/audio/speak_freely/pkg-plist
new file mode 100644
index 000000000000..9c9d9ad7fafc
--- /dev/null
+++ b/audio/speak_freely/pkg-plist
@@ -0,0 +1,13 @@
+bin/sfspeaker
+bin/sfmike
+bin/sflwl
+sbin/sfecho
+sbin/sflwld
+sbin/sfvod
+lib/speak_freely/ring.au
+man/man1/sfspeaker.1.gz
+man/man1/sfmike.1.gz
+man/man1/sflwl.1.gz
+man/man1/sfecho.1.gz
+man/man1/sflwld.1.gz
+man/man1/sfvod.1.gz
diff --git a/mbone/speak_freely/Makefile b/mbone/speak_freely/Makefile
new file mode 100644
index 000000000000..7114618568d0
--- /dev/null
+++ b/mbone/speak_freely/Makefile
@@ -0,0 +1,50 @@
+# New ports collection makefile for: speak_freely
+# Original WWW site: http://www.fourmilab.ch/speakfree/unix/index.html
+# Version required: 6.1b
+# Date created: 18 Apr 1996
+# Whom: ache
+#
+# $Id: Makefile,v 1.5 1996/10/25 16:49:22 ache Exp $
+#
+
+DISTNAME= speak_freely-6.1b
+CATEGORIES+= net audio security
+MASTER_SITES= http://www.fourmilab.ch/speakfree/unix/
+
+MAINTAINER= ache@FreeBSD.ORG
+
+LIB_DEPENDS= gsm\\.1\\.0:${PORTSDIR}/audio/gsm
+
+UTILS= sfspeaker sfmike sflwl
+DEMNS= sfecho sflwld
+DDEMNS= sfvod
+SFLIB= ${PREFIX}/lib/speak_freely
+
+do-install:
+ if [ ! -d ${SFLIB} ]; then \
+ install -d -o ${BINOWN} -g ${BINGRP} -m 755 ${SFLIB}; \
+ fi
+ cd ${WRKSRC}; \
+ $(INSTALL_DATA) ring.au ${SFLIB}
+ cd ${WRKSRC}; \
+ for p in ${UTILS}; do \
+ $(INSTALL_PROGRAM) $$p ${PREFIX}/bin; \
+ $(INSTALL_MAN) $$p.1 ${PREFIX}/man/man1; \
+ done;
+ cd ${WRKSRC}; \
+ for p in ${DEMNS}; do \
+ $(INSTALL_PROGRAM) $$p ${PREFIX}/sbin; \
+ $(INSTALL_MAN) $$p.1 ${PREFIX}/man/man1; \
+ done;
+ cd ${WRKSRC}; \
+ for p in ${DDEMNS}; do \
+ $(INSTALL_SCRIPT) $$p ${PREFIX}/sbin; \
+ $(INSTALL_MAN) $$p.1 ${PREFIX}/man/man1; \
+ done;
+.if !defined(NOMANCOMPRESS)
+ for p in ${UTILS} ${DEMNS} ${DDEMNS}; do \
+ gzip -9nf ${PREFIX}/man/man1/$$p.1; \
+ done
+.endif
+
+.include <bsd.port.mk>
diff --git a/mbone/speak_freely/distinfo b/mbone/speak_freely/distinfo
new file mode 100644
index 000000000000..32484b10de6a
--- /dev/null
+++ b/mbone/speak_freely/distinfo
@@ -0,0 +1 @@
+MD5 (speak_freely-6.1b.tar.gz) = 366b66297186dc7e02afbb5227a33ec8
diff --git a/mbone/speak_freely/files/patch-aa b/mbone/speak_freely/files/patch-aa
new file mode 100644
index 000000000000..40369b1b9895
--- /dev/null
+++ b/mbone/speak_freely/files/patch-aa
@@ -0,0 +1,219 @@
+*** Makefile.orig Mon Aug 12 15:52:16 1996
+--- Makefile Fri Oct 25 17:50:11 1996
+***************
+*** 11,18 ****
+ #LFLAGS = -laudio -lcurses -lm
+
+ # SunOS 4.1.x
+! CC = cc -fsingle -DOLDCC
+! LFLAGS = -lcurses -ltermcap -lm
+
+ # Solaris 2.x courtesy of Hans Werner Strube (strube@physik3.gwdg.de)
+ # (-fsingle is needed for pre-4.0 compilers and is ignored by 4.0 in
+--- 11,18 ----
+ #LFLAGS = -laudio -lcurses -lm
+
+ # SunOS 4.1.x
+! #CC = cc -fsingle -DOLDCC
+! #LFLAGS = -lcurses -ltermcap -lm
+
+ # Solaris 2.x courtesy of Hans Werner Strube (strube@physik3.gwdg.de)
+ # (-fsingle is needed for pre-4.0 compilers and is ignored by 4.0 in
+***************
+*** 35,42 ****
+ # Depending on how your driver handles non-blocking I/O,
+ # you may also have to add -DAUDIO_BLOCKING to the
+ # CCFLAGS line.
+! #CCFLAGS = -DM_LITTLE_ENDIAN
+! #LFLAGS = -lcurses -ltermcap -lcompat -lm
+
+ # Linux 1.x, courtesy of KeyJ Phade (phade@powerweb.de)
+ #
+--- 35,42 ----
+ # Depending on how your driver handles non-blocking I/O,
+ # you may also have to add -DAUDIO_BLOCKING to the
+ # CCFLAGS line.
+! CCFLAGS = -DM_LITTLE_ENDIAN
+! LFLAGS = -lcurses -ltermcap -lcompat -lm
+
+ # Linux 1.x, courtesy of KeyJ Phade (phade@powerweb.de)
+ #
+***************
+*** 62,73 ****
+ #CCFLAGS = -DHEWLETT_PACKARD -DOLDCC
+ #LFLAGS = -lAlib -lcurses -ltermcap -lm
+
+ # Where Perl is located on your system. This is used to make
+ # a directly-executable version of sfvod.
+! PERL = /usr/local/bin/perl
+
+ # If your audio hardware is half duplex, uncomment the next line
+! #DUPLEX = -DHALF_DUPLEX
+
+ # If your getdomainname() does not return the DNS domainname, define:
+ #DOMAIN=-DMYDOMAIN=\"somedomain.net\"
+--- 62,75 ----
+ #CCFLAGS = -DHEWLETT_PACKARD -DOLDCC
+ #LFLAGS = -lAlib -lcurses -ltermcap -lm
+
++ PREFIX=/usr/local
++
+ # Where Perl is located on your system. This is used to make
+ # a directly-executable version of sfvod.
+! PERL = /usr/bin/perl
+
+ # If your audio hardware is half duplex, uncomment the next line
+! DUPLEX = -DHALF_DUPLEX
+
+ # If your getdomainname() does not return the DNS domainname, define:
+ #DOMAIN=-DMYDOMAIN=\"somedomain.net\"
+***************
+*** 96,106 ****
+ CARGS = -DInternet_Port=$(INTERNET_PORT)
+
+ #DEBUG = -g -DHEXDUMP
+! DEBUG = -O
+
+ # Compiler flags
+
+! CFLAGS = $(DEBUG) -Iadpcm -Ilpc -Igsm/inc -Imd5 -Iidea -Ilibdes $(CARGS) -DRelno=$(REL) $(DUPLEX) $(CCFLAGS) $(DOMAIN)
+
+ PROGRAMS = sfspeaker sfmike sflwld sflwl sfecho sfvod
+
+--- 98,116 ----
+ CARGS = -DInternet_Port=$(INTERNET_PORT)
+
+ #DEBUG = -g -DHEXDUMP
+! DEBUG =
+!
+! .if exists(/usr/lib/libdes.a)
+! LDES=-ldes
+! IDES=
+! .else
+! LDES=libdes/libdes.a
+! IDES=-Ilibdes
+! .endif
+
+ # Compiler flags
+
+! CFLAGS += $(DEBUG) -Iadpcm -Ilpc -Iidea $(IDES) -I/usr/include -I${PREFIX}/include $(CARGS) -DRelno=$(REL) $(DUPLEX) $(CCFLAGS) $(DOMAIN)
+
+ PROGRAMS = sfspeaker sfmike sflwld sflwl sfecho sfvod
+
+***************
+*** 108,120 ****
+
+ SPKROBJS = speaker.o codecs.o deskey.o g711.o rate.o rtpacket.o soundbyte.o ulaw.o usleep.o vatpkt.o vox.o hp_audio.o
+
+! sfspeaker: $(SPKROBJS) adpcmlib.o lpclib.o lpc10lib.o gsmlib.o deslib.o md5lib.o idealib.o libdes.o xdsub.o
+! $(CC) $(SPKROBJS) adpcm/adpcm-u.o des/des.o md5/md5.o idea/idea.o lpc10/liblpc10.a gsm/lib/libgsm.a lpc/lpc.o xdsub.o libdes/libdes.a $(LFLAGS) -o sfspeaker
+
+ MIKEOBJS = mike.o codecs.o deskey.o g711.o rate.o rtpacket.o soundbyte.o ulaw.o usleep.o vatpkt.o xdsub.o hp_audio.o
+
+! sfmike: $(MIKEOBJS) adpcmlib.o lpclib.o lpc10lib.o gsmlib.o deslib.o md5lib.o idealib.o libdes.o
+! $(CC) $(MIKEOBJS) adpcm/adpcm-u.o des/des.o md5/md5.o idea/idea.o -lm lpc10/liblpc10.a gsm/lib/libgsm.a lpc/lpc.o libdes/libdes.a $(LFLAGS) -o sfmike
+
+ LWLDOBJS = lwld.o xdsub.o
+
+--- 118,130 ----
+
+ SPKROBJS = speaker.o codecs.o deskey.o g711.o rate.o rtpacket.o soundbyte.o ulaw.o usleep.o vatpkt.o vox.o hp_audio.o
+
+! sfspeaker: $(SPKROBJS) adpcmlib.o lpclib.o lpc10lib.o deslib.o idealib.o libdes.o xdsub.o
+! $(CC) $(SPKROBJS) adpcm/adpcm-u.o des/des.o idea/idea.o lpc10/liblpc10.a -L${PREFIX}/lib -lgsm lpc/lpc.o xdsub.o -lmd $(LDES) $(LFLAGS) -o sfspeaker
+
+ MIKEOBJS = mike.o codecs.o deskey.o g711.o rate.o rtpacket.o soundbyte.o ulaw.o usleep.o vatpkt.o xdsub.o hp_audio.o
+
+! sfmike: $(MIKEOBJS) adpcmlib.o lpclib.o lpc10lib.o deslib.o idealib.o libdes.o
+! $(CC) $(MIKEOBJS) adpcm/adpcm-u.o des/des.o idea/idea.o lpc10/liblpc10.a -lm -L${PREFIX}/lib -lgsm lpc/lpc.o -lmd $(LDES) $(LFLAGS) -o sfmike
+
+ LWLDOBJS = lwld.o xdsub.o
+
+***************
+*** 128,135 ****
+
+ ECHOOBJS = echo.o codecs.o g711.o rtpacket.o ulaw.o xdsub.o
+
+! sfecho: $(ECHOOBJS) md5lib.o
+! $(CC) $(ECHOOBJS) md5/md5.o adpcm/adpcm-u.o lpc/lpc.o $(LFLAGS) -o sfecho
+
+ sfvod: sfvod.pl
+ echo \#\! $(PERL) >sfvod
+--- 138,145 ----
+
+ ECHOOBJS = echo.o codecs.o g711.o rtpacket.o ulaw.o xdsub.o
+
+! sfecho: $(ECHOOBJS)
+! $(CC) $(ECHOOBJS) adpcm/adpcm-u.o lpc/lpc.o -lmd $(LFLAGS) -o sfecho
+
+ sfvod: sfvod.pl
+ echo \#\! $(PERL) >sfvod
+***************
+*** 145,155 ****
+ chmod 755 sfvod
+
+ adpcmlib.o:
+! ( echo "Building ADPCM library."; cd adpcm ; make CC="$(CC)" )
+ echo "ADPCM" >adpcmlib.o
+
+ libdes.o:
+ ( echo "Building LIBDES library."; cd libdes ; make -f Makefile.sf CC="$(CC) $(CCFLAGS) $(DEBUG)" )
+ echo "LIBDES" >libdes.o
+
+ lpclib.o:
+--- 155,167 ----
+ chmod 755 sfvod
+
+ adpcmlib.o:
+! ( echo "Building ADPCM library."; cd adpcm ; make CC="$(CC) $(CCFLAGS)" )
+ echo "ADPCM" >adpcmlib.o
+
+ libdes.o:
++ .if !exists(/usr/lib/libdes.a)
+ ( echo "Building LIBDES library."; cd libdes ; make -f Makefile.sf CC="$(CC) $(CCFLAGS) $(DEBUG)" )
++ .endif
+ echo "LIBDES" >libdes.o
+
+ lpclib.o:
+***************
+*** 161,167 ****
+ echo "LPC" >lpc10lib.o
+
+ gsmlib.o:
+! ( echo "Building GSM library."; cd gsm ; make CC="$(CC)" )
+ echo "GSM" >gsmlib.o
+
+ deslib.o:
+--- 173,179 ----
+ echo "LPC" >lpc10lib.o
+
+ gsmlib.o:
+! ( echo "Building GSM library."; cd gsm ; make CC="$(CC) $(CCFLAGS)" )
+ echo "GSM" >gsmlib.o
+
+ deslib.o:
+***************
+*** 169,179 ****
+ echo "DES" >deslib.o
+
+ md5lib.o:
+! ( echo "Building MD5 library."; cd md5 ; make CC="$(CC)" )
+ echo "MD5" >md5lib.o
+
+ idealib.o:
+! ( echo "Building IDEA library."; cd idea ; make CC="$(CC)" )
+ echo "IDEA" >idealib.o
+
+ codecs.o: codecs.c speakfree.h
+--- 181,191 ----
+ echo "DES" >deslib.o
+
+ md5lib.o:
+! ( echo "Building MD5 library."; cd md5 ; make CC="$(CC) $(CCFLAGS)" )
+ echo "MD5" >md5lib.o
+
+ idealib.o:
+! ( echo "Building IDEA library."; cd idea ; make CC="$(CC) $(CCFLAGS)" )
+ echo "IDEA" >idealib.o
+
+ codecs.o: codecs.c speakfree.h
diff --git a/mbone/speak_freely/files/patch-ac b/mbone/speak_freely/files/patch-ac
new file mode 100644
index 000000000000..e4c8ee876155
--- /dev/null
+++ b/mbone/speak_freely/files/patch-ac
@@ -0,0 +1,14 @@
+*** mike.c.orig Tue Apr 23 14:45:52 1996
+--- mike.c Fri Oct 25 19:11:15 1996
+***************
+*** 687,692 ****
+--- 687,695 ----
+ (sb->buffer.buffer_len > 16)) {
+ pktlen += sizeof(sb->sendinghost);
+ }
++ /* must stay in network order for debugging output */
++ sb->compression = htonl(sb->compression);
++ sb->buffer.buffer_len = htonl(sb->buffer.buffer_len);
+ }
+ }
+ }
diff --git a/mbone/speak_freely/files/patch-ad b/mbone/speak_freely/files/patch-ad
new file mode 100644
index 000000000000..4abcc937427b
--- /dev/null
+++ b/mbone/speak_freely/files/patch-ad
@@ -0,0 +1,74 @@
+*** adpcm/Makefile.bak Fri Sep 1 14:58:19 1995
+--- adpcm/Makefile Fri Oct 25 18:55:46 1996
+***************
+*** 1,7 ****
+ #
+ # Makefile for adpcm and test programs
+ # -------------------
+! CFLAGS=-O -I..
+ # May need this on a sun:
+ #CFLAGS=-O -I/usr/demo/SOUND
+
+--- 1,7 ----
+ #
+ # Makefile for adpcm and test programs
+ # -------------------
+! CFLAGS+=-I..
+ # May need this on a sun:
+ #CFLAGS=-O -I/usr/demo/SOUND
+
+*** des/Makefile.bak Thu Nov 2 22:38:58 1995
+--- des/Makefile Fri Oct 25 18:55:46 1996
+***************
+*** 1,4 ****
+! CFLAGS=-O
+
+ all: des.o
+
+--- 1,4 ----
+! #CFLAGS=-O
+
+ all: des.o
+
+*** idea/Makefile.bak Wed Aug 2 22:39:19 1995
+--- idea/Makefile Fri Oct 25 18:55:46 1996
+***************
+*** 6,13 ****
+
+ # Compiler flags
+
+! CC = cc
+! CFLAGS = -O
+
+ all: idea.o
+
+--- 6,13 ----
+
+ # Compiler flags
+
+! #CC = cc
+! #CFLAGS = -O
+
+ all: idea.o
+
+*** libdes/Makefile.bak Wed Apr 17 23:49:33 1996
+--- libdes/Makefile Fri Oct 25 18:55:46 1996
+***************
+*** 30,37 ****
+
+ OPTS= $(OPTS0) $(OPTS1) $(OPTS2)
+
+! CC=cc
+! CFLAGS= -O $(OPTS) $(CFLAG)
+
+ #CC=gcc
+ #CFLAGS= -O3 -fomit-frame-pointer $(OPTS) $(CFLAG)
+--- 30,37 ----
+
+ OPTS= $(OPTS0) $(OPTS1) $(OPTS2)
+
+! #CC=cc
+! CFLAGS+= $(OPTS) $(CFLAG)
+
+ #CC=gcc
+ #CFLAGS= -O3 -fomit-frame-pointer $(OPTS) $(CFLAG)
diff --git a/mbone/speak_freely/files/patch-ae b/mbone/speak_freely/files/patch-ae
new file mode 100644
index 000000000000..63da3ff0d3cb
--- /dev/null
+++ b/mbone/speak_freely/files/patch-ae
@@ -0,0 +1,101 @@
+*** soundbyte.c.orig Mon Apr 8 17:39:41 1996
+--- soundbyte.c Fri Oct 25 20:36:06 1996
+***************
+*** 96,101 ****
+--- 96,106 ----
+ }
+ #endif
+
++ #ifndef sun
++ #ifdef HALF_DUPLEX
++ static int oldvol = -1;
++ #endif
++ #endif
+
+ /* SOUNDINIT -- Open the sound peripheral and initialise for
+ access. Return TRUE if successful, FALSE
+***************
+*** 145,150 ****
+--- 150,170 ----
+ }
+ ioctl(Audio_fd, AUDIO_SETINFO, &Audio_info);
+ #endif
++ #ifndef sun
++ #ifdef HALF_DUPLEX
++ if (iomode == O_RDONLY) {
++ if (oldvol == -1)
++ oldvol = soundgetvol();
++ soundplayvol(0);
++ } else if ( iomode == O_WRONLY
++ && oldvol != -1
++ ) {
++ if (soundgetvol() == 0)
++ soundplayvol(oldvol);
++ oldvol = -1;
++ }
++ #endif
++ #endif
+ return TRUE;
+ }
+ if (errno != EINTR) {
+***************
+*** 160,165 ****
+--- 180,194 ----
+ void soundterm()
+ {
+ if (audiof >= 0) {
++ #ifndef sun
++ #ifdef HALF_DUPLEX
++ if (oldvol != -1) {
++ if (soundgetvol() == 0)
++ soundplayvol(oldvol);
++ oldvol = -1;
++ }
++ #endif
++ #endif
+ if (close(audiof) < 0) {
+ perror("closing audio device");
+ }
+***************
+*** 210,219 ****
+
+ arg = (value << 8) | value;
+
+! if (ioctl(Audio_fd, MIXER_WRITE(SOUND_MIXER_PCM), &arg) < 0)
+! perror("SOUND_MIXER_PCM");
+ #endif
+ }
+
+ /* SOUNDRECGAIN -- Set recording gain from 0 (minimum) to 100 (maximum). */
+
+--- 239,268 ----
+
+ arg = (value << 8) | value;
+
+! if (ioctl(Audio_fd, SOUND_MIXER_WRITE_PCM, &arg) < 0)
+! perror("SOUND_MIXER_WRITE_PCM");
+ #endif
+ }
++
++ #ifndef sun
++ #ifdef HALF_DUPLEX
++
++ /* SOUNDGETVOL -- Get current playback volume. */
++
++ int soundgetvol()
++ {
++ int arg, v1, v2;
++
++ if (ioctl(Audio_fd, SOUND_MIXER_READ_PCM, &arg) < 0) {
++ perror("SOUND_MIXER_READ_PCM");
++ return -1;
++ }
++ v1 = arg & 0xFF;
++ v2 = (arg >> 8) & 0xFF;
++ return (v1 > v2) ? v1 : v2;
++ }
++ #endif
++ #endif
+
+ /* SOUNDRECGAIN -- Set recording gain from 0 (minimum) to 100 (maximum). */
+
diff --git a/mbone/speak_freely/pkg-comment b/mbone/speak_freely/pkg-comment
new file mode 100644
index 000000000000..c9c3ae747508
--- /dev/null
+++ b/mbone/speak_freely/pkg-comment
@@ -0,0 +1 @@
+Voice Communication Over Data Networks.
diff --git a/mbone/speak_freely/pkg-descr b/mbone/speak_freely/pkg-descr
new file mode 100644
index 000000000000..f66a6d8b6f1f
--- /dev/null
+++ b/mbone/speak_freely/pkg-descr
@@ -0,0 +1,8 @@
+ Speak Freely allows users of a variety of Unix and Unix-
+ like workstations equipped with audio hardware connected
+ by a network to converse, using the audio input and output
+ facilities of the workstation to digitise and later recon-
+ struct the sound and the network to relay sound packets.
+ Optional compression is provided, allowing conversations
+ over relatively low-bandwidth Internet links as well as
+ local area networks.
diff --git a/mbone/speak_freely/pkg-plist b/mbone/speak_freely/pkg-plist
new file mode 100644
index 000000000000..9c9d9ad7fafc
--- /dev/null
+++ b/mbone/speak_freely/pkg-plist
@@ -0,0 +1,13 @@
+bin/sfspeaker
+bin/sfmike
+bin/sflwl
+sbin/sfecho
+sbin/sflwld
+sbin/sfvod
+lib/speak_freely/ring.au
+man/man1/sfspeaker.1.gz
+man/man1/sfmike.1.gz
+man/man1/sflwl.1.gz
+man/man1/sfecho.1.gz
+man/man1/sflwld.1.gz
+man/man1/sfvod.1.gz