Date: Fri, 2 Jul 2004 01:17:18 -0400 (EDT) From: Diane Bruce <db@db.net> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/68587: New port: comms/echolinux Amateur Radio echolink for unix Message-ID: <200407020517.i625HINQ009430@night.db.net> Resent-Message-ID: <200407020520.i625K5s8090341@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>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@dirrm share/echolinux/pixmaps X@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@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@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:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200407020517.i625HINQ009430>