ports/68587: New port: comms/echolinux Amateur Radio echolink for unix
Diane Bruce
db at db.net
Fri Jul 2 05:21:42 UTC 2004
>Number: 68587
>Category: ports
>Synopsis: New port: comms/echolinux Amateur Radio echolink for unix
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Fri Jul 02 05:20:05 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator: Diane Bruce
>Release: FreeBSD 5.2.1-RELEASE-p9 i386
>Organization:
Diane Bruce
>Environment:
System: FreeBSD night.db.net 5.2.1-RELEASE-p9 FreeBSD 5.2.1-RELEASE-p9 #1: Thu Jul 1 17:17:18 EDT 2004 root@:/usr/src/sys/i386/compile/NIGHT i386
>Description:
>How-To-Repeat:
>Fix:
See shar
--- echolinux-port.shar begins here ---
# This is a shell archive. Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file". Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
# echolinux-port
# echolinux-port/pkg-plist
# echolinux-port/pkg-descr
# echolinux-port/Makefile
# echolinux-port/files
# echolinux-port/files/patch-echolinux_control.c
# echolinux-port/files/patch-echolinux_vox.c
# echolinux-port/files/patch-echolinux_echolinux.h
# echolinux-port/files/patch-echogui_servercode.c
# echolinux-port/files/patch-echogui_testgui_main.c
# echolinux-port/files/patch-echogui_testgui.c
# echolinux-port/files/patch-echogui_testgui_cb.c
# echolinux-port/distinfo
#
echo c - echolinux-port
mkdir -p echolinux-port > /dev/null 2>&1
echo x - echolinux-port/pkg-plist
sed 's/^X//' >echolinux-port/pkg-plist << 'END-of-echolinux-port/pkg-plist'
Xbin/echoaudio
Xbin/echogui
Xbin/echolinux
Xshare/echolinux/echolinux.desktop
Xshare/echolinux/pixmaps/echolinux_48x48.png
X%%PORTDOCS%%%%DOCSDIR%%/README
X%%PORTDOCS%%%%DOCSDIR%%/Using_EchoLinux.txt
X%%PORTDOCS%%@dirrm %%DOCSDIR%%
X at dirrm share/echolinux/pixmaps
X at dirrm share/echolinux
END-of-echolinux-port/pkg-plist
echo x - echolinux-port/pkg-descr
sed 's/^X//' >echolinux-port/pkg-descr << 'END-of-echolinux-port/pkg-descr'
XAmateur Radio echolink for unix
X
XWWW: http://cqinet.sourceforge.net/
X
X- Diane Bruce, VA3DB
Xdb at db.net
END-of-echolinux-port/pkg-descr
echo x - echolinux-port/Makefile
sed 's/^X//' >echolinux-port/Makefile << 'END-of-echolinux-port/Makefile'
X# ports collection makefile for: echolinux
X# Date created: 25 June 2004
X# Whom: db
X#
X# $FreeBSD$
X#
X
XPORTNAME= echolinux
XPORTVERSION= 0.16a
XCATEGORIES= comms
XMASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
XMASTER_SITE_SUBDIR= cqinet
XEXTRACT_SUFX= .tgz
X
XMAINTAINER= db at db.net
XCOMMENT= Amateur Radio Echolink for unix
X
XUSE_REINPLACE= yes
X
Xpost-patch:
X @${REINPLACE_CMD} -e \
X 's|%%PREFIX%%|${PREFIX}|' \
X ${WRKSRC}/echolinux/Makefile
X @${REINPLACE_CMD} -e \
X 's|%%PREFIX%%|${PREFIX}|' \
X ${WRKSRC}/echogui/Makefile
X @${REINPLACE_CMD} -e \
X 's|gcc|$${CC}|' \
X ${WRKSRC}/echogui/Makefile
X @${REINPLACE_CMD} -e \
X 's|cc|$${CC}|' \
X ${WRKSRC}/echogui/Makefile
X @${REINPLACE_CMD} -e \
X 's|/usr/include/X11|$${X11BASE}/include|' \
X ${WRKSRC}/echogui/Makefile
X @${REINPLACE_CMD} -e \
X 's|-o echogui -L/usr/X11R6/lib -lX11 -lXpm -lforms -lm -lpthread|\
X $${CFLAGS} -o echogui -L$${X11BASE}/lib -lX11 -lXpm -lforms -lm|' \
X ${WRKSRC}/echogui/Makefile
X @${REINPLACE_CMD} -e \
X 's|CARGS|CFLAGS|' \
X ${WRKSRC}/echogui/Makefile
X @${REINPLACE_CMD} -e \
X 's|= -DNodeFont=FL_TINY_SIZE|+= -pthread -DNodeFont=FL_TINY_SIZE|' \
X ${WRKSRC}/echogui/Makefile
X @${REINPLACE_CMD} -e \
X 's|<linux/soundcard.h>|<sys/soundcard.h>|' \
X ${WRKSRC}/echogui/testgui_cb.c
X @${REINPLACE_CMD} -e \
X 's|<linux/soundcard.h>|<sys/soundcard.h>|' \
X ${WRKSRC}/echogui/testgui_main.c
X @${REINPLACE_CMD} -e \
X 's|CC = gcc -O3|#CC = gcc -O3|' \
X ${WRKSRC}/echolinux/Makefile
X @${REINPLACE_CMD} -e \
X 's|^CFLAGS =|CFLAGS +=|' \
X ${WRKSRC}/echolinux/Makefile
X @${REINPLACE_CMD} -e \
X 's|<linux/soundcard.h>|<sys/soundcard.h>|' \
X ${WRKSRC}/echolinux/control.c
X @${REINPLACE_CMD} -e \
X 's|<linux/soundcard.h>|<sys/soundcard.h>|' \
X ${WRKSRC}/echolinux/vox.c
X
Xpost-install:
X.if !defined(NOPORTDOCS)
X @${MKDIR} ${DOCSDIR}
X @${INSTALL_DATA} ${WRKSRC}/README ${DOCSDIR}/README
X @${INSTALL_DATA} ${WRKSRC}/Using_EchoLinux.txt ${DOCSDIR}/Using_EchoLinux.txt
X @${ECHO} ""
X @${ECHO} "echolinux docs installed in ${DOCSDIR}""
X @${ECHO} ""
X.endif
X @${MKDIR} ${PREFIX}/share/echolinux
X @${INSTALL_DATA} ${WRKSRC}/echolinux.desktop ${PREFIX}/share/echolinux
X @${MKDIR} ${PREFIX}/share/echolinux/pixmaps
X @${INSTALL_DATA} ${WRKSRC}/pixmaps/echolinux_48x48.png ${PREFIX}/share/echolinux/pixmaps
X @${ECHO} ""
X @${ECHO} "echolinux desktop examples installed in ${PREFIX}/share/echolinux"
X @${ECHO} ""
X
X.include <bsd.port.mk>
END-of-echolinux-port/Makefile
echo c - echolinux-port/files
mkdir -p echolinux-port/files > /dev/null 2>&1
echo x - echolinux-port/files/patch-echolinux_control.c
sed 's/^X//' >echolinux-port/files/patch-echolinux_control.c << 'END-of-echolinux-port/files/patch-echolinux_control.c'
X--- echolinux/control.c.orig Mon Feb 2 22:29:46 2004
X+++ echolinux/control.c Fri Jul 2 00:58:38 2004
X@@ -24,7 +24,8 @@
X #include <arpa/inet.h>
X #include <netdb.h>
X #include <errno.h>
X-#include <wait.h>
X+#include <sys/types.h>
X+#include <sys/wait.h>
X #include <signal.h>
X #include <string.h>
X #include <sys/time.h>
END-of-echolinux-port/files/patch-echolinux_control.c
echo x - echolinux-port/files/patch-echolinux_vox.c
sed 's/^X//' >echolinux-port/files/patch-echolinux_vox.c << 'END-of-echolinux-port/files/patch-echolinux_vox.c'
X--- echolinux/vox.c.orig Tue Feb 3 01:12:09 2004
X+++ echolinux/vox.c Fri Jul 2 00:58:47 2004
X@@ -546,7 +546,7 @@
X timeout.tv_sec = 1;
X timeout.tv_usec = 0;
X for(i=0;i<4;i++){
X- temp = &(voicePacket->data);
X+ temp = (unsigned char *)&(voicePacket->data);
X gsm_decode(gsmh, temp+(i*33), sbuff);
X ioctl(audiofd, SNDCTL_DSP_GETOSPACE, &info);
X while(info.bytes < 320){
END-of-echolinux-port/files/patch-echolinux_vox.c
echo x - echolinux-port/files/patch-echolinux_echolinux.h
sed 's/^X//' >echolinux-port/files/patch-echolinux_echolinux.h << 'END-of-echolinux-port/files/patch-echolinux_echolinux.h'
X--- echolinux/echolinux.h.orig Sat Dec 21 22:11:34 2002
X+++ echolinux/echolinux.h Fri Jul 2 00:57:53 2004
X@@ -11,22 +11,17 @@
X #define PORT_BASE 5198
X
X
X-struct termio term_params, old_term_params;
X+struct termios term_params, old_term_params;
X
X void raw_tty(int flag){
X
X if(flag){
X- ioctl(fileno(stdin), TCGETA, &old_term_params);
X+ tcgetattr(fileno(stdin), &old_term_params);
X term_params = old_term_params;
X- term_params.c_iflag &= ~(ICRNL|IXON|IXOFF); /* no cr translation */
X- term_params.c_iflag &= ~(ISTRIP); /* no stripping of high order bit */
X- term_params.c_oflag &= ~(OPOST); /* no output processing */
X- term_params.c_lflag &= ~(ISIG|ICANON|ECHO); /* raw mode */
X- term_params.c_cc[VMIN] = 0; /* satisfy read after 1 char */
X- term_params.c_cc[VTIME] = 0; /* satisfy read after 1 char */
X- ioctl(fileno(stdin), TCSETAF, &term_params);
X+ cfmakeraw(&term_params);
X+ tcsetattr(fileno(stdin), TCSAFLUSH, &term_params);
X } else{
X- ioctl(fileno(stdin), TCSETAF, &old_term_params);
X+ tcsetattr(fileno(stdin), TCSAFLUSH, &old_term_params);
X }
X }
X
END-of-echolinux-port/files/patch-echolinux_echolinux.h
echo x - echolinux-port/files/patch-echogui_servercode.c
sed 's/^X//' >echolinux-port/files/patch-echogui_servercode.c << 'END-of-echolinux-port/files/patch-echogui_servercode.c'
X--- echogui/servercode.c.orig Mon Feb 2 22:48:41 2004
X+++ echogui/servercode.c Fri Jul 2 00:57:53 2004
X@@ -216,22 +216,13 @@
X
X serverFd = fdopen(serverSocket, "r");
X
X- memset(sendBuf, 0x6c, 1);
X- result = write(serverSocket, sendBuf, 1);
X-
X /* Get the local time */
X (void) time(&theTime);
X tm_ptr = localtime(&theTime);
X strftime(logTime, 6, "%H:%M", tm_ptr);
X
X- strcpy(sendBuf, callsign);
X- strcat(sendBuf,"\254\254");
X- strcat(sendBuf, password);
X- strcat(sendBuf, "\015ONLINE3.38(");
X- strcat(sendBuf, logTime);
X- strcat(sendBuf, ")\015");
X- strcat(sendBuf,location);
X- strcat(sendBuf,"\015");
X+ sprintf(sendBuf,"\x6c%s\xac\xac%s\rONLINE3.38(%s)\r%s\r",
X+ callsign, password, logTime, location);
X
X result = write(serverSocket, sendBuf, strlen(sendBuf));
X
X@@ -677,33 +668,9 @@
X }
X
X if(FD_ISSET(serverSocket, &testWriteFds)){
X- doTimeout = 0;
X- (void) time(&theTime);
X- tm_ptr = localtime(&theTime);
X- strftime(logTime, 20, "%H:%M:%S", tm_ptr);
X- i = connect(serverSocket, (struct sockaddr *) &adr_srvr,len_inet);
X- // printf("Connect returned a %d, errno = %s\n", i, strerror(errno));
X- if(i){
X- // printf("%s serverSocket has an error, %d: %s.\n",
X- // logTime, errno, strerror(errno));
X- FD_CLR(serverSocket, &exceptFds);
X- FD_CLR(serverSocket, &writeFds);
X- close(serverSocket);
X- serverPortState == CLOSED;
X- if(serverShutdown)
X- quit = 1;
X- else{
X- pServerCurrent = pServerCurrent->next;
X- openSocket();
X- }
X- }
X- else{
X- //printf("%s Cool, no error, server on socket %d.\n",
X- // logTime, serverSocket);
X- serverPortState = CONNECTED;
X- FD_CLR(serverSocket, &writeFds);
X- serverTask();
X- }
X+ serverPortState = CONNECTED;
X+ FD_CLR(serverSocket, &writeFds);
X+ serverTask();
X }
X
X if(serverState != IDLE){
END-of-echolinux-port/files/patch-echogui_servercode.c
echo x - echolinux-port/files/patch-echogui_testgui_main.c
sed 's/^X//' >echolinux-port/files/patch-echogui_testgui_main.c << 'END-of-echolinux-port/files/patch-echogui_testgui_main.c'
X--- echogui/testgui_main.c.orig Sun Feb 15 11:33:04 2004
X+++ echogui/testgui_main.c Fri Jul 2 00:59:18 2004
X@@ -16,9 +16,10 @@
X #include <linux/soundcard.h>
X #include <sys/ioctl.h>
X #include <fcntl.h>
X-#include <forms.h>
X+#include <X11/forms.h>
X #include <string.h>
X #include <math.h>
X+#include <pthread.h>
X
X #include "testgui.h"
X #include "serverglobals.h"
END-of-echolinux-port/files/patch-echogui_testgui_main.c
echo x - echolinux-port/files/patch-echogui_testgui.c
sed 's/^X//' >echolinux-port/files/patch-echogui_testgui.c << 'END-of-echolinux-port/files/patch-echogui_testgui.c'
X--- echogui/testgui.c.orig Thu Feb 12 14:59:29 2004
X+++ echogui/testgui.c Fri Jul 2 00:57:53 2004
X@@ -1,6 +1,6 @@
X /* Form definition file generated with fdesign. */
X
X-#include "forms.h"
X+#include <X11/forms.h>
X #include <stdlib.h>
X #include "testgui.h"
X
END-of-echolinux-port/files/patch-echogui_testgui.c
echo x - echolinux-port/files/patch-echogui_testgui_cb.c
sed 's/^X//' >echolinux-port/files/patch-echogui_testgui_cb.c << 'END-of-echolinux-port/files/patch-echogui_testgui_cb.c'
X--- echogui/testgui_cb.c.orig Mon Feb 2 21:28:03 2004
X+++ echogui/testgui_cb.c Fri Jul 2 00:59:04 2004
X@@ -14,9 +14,10 @@
X #include <linux/soundcard.h>
X #include <sys/ioctl.h>
X #include <fcntl.h>
X-#include <forms.h>
X+#include <X11/forms.h>
X #include <math.h>
X #include <signal.h>
X+#include <pthread.h>
X
X #include "testgui.h"
X #include "serverglobals.h"
X@@ -345,6 +346,7 @@
X {
X int error;
X char line[3];
X+ struct timeval timenow;
X struct timespec timeout;
X
X // kill(controlPid, SIGKILL);
X@@ -354,8 +356,9 @@
X line[1] = '\n';
X write(controlOutPipe[1], line, 2);
X
X- gettimeofday(&timeout);
X- timeout.tv_sec += 5;
X+ gettimeofday(&timenow, NULL);
X+ timeout.tv_sec = timenow.tv_sec + 5;
X+ timeout.tv_nsec = 0;
X pthread_mutex_lock(&serverLoggedOffLock);
X sendServerCommand(LOGOFF);
X pthread_cond_timedwait(&serverLoggedOff,
END-of-echolinux-port/files/patch-echogui_testgui_cb.c
echo x - echolinux-port/distinfo
sed 's/^X//' >echolinux-port/distinfo << 'END-of-echolinux-port/distinfo'
XMD5 (echolinux-0.16a.tgz) = 374b4f26858e7f46935147d48d6322b9
XSIZE (echolinux-0.16a.tgz) = 61913
END-of-echolinux-port/distinfo
exit
--- echolinux-port.shar ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list