aboutsummaryrefslogtreecommitdiff
path: root/comms/linrad
diff options
context:
space:
mode:
authorIon-Mihai Tetcu <itetcu@FreeBSD.org>2006-09-08 22:52:37 +0000
committerIon-Mihai Tetcu <itetcu@FreeBSD.org>2006-09-08 22:52:37 +0000
commit9370141203a926c31548b8b4737be7d8db9d7793 (patch)
tree17131f1e92072650aa2450af5cc21335615690db /comms/linrad
parent955e1cb1fe00d80b0cb724ba4954d18b53a0a910 (diff)
downloadports-9370141203a926c31548b8b4737be7d8db9d7793.tar.gz
ports-9370141203a926c31548b8b4737be7d8db9d7793.zip
- Update to 2.17
Added file(s): - files/linrad - pkg-message Removed file(s): - files/patch-lmain.c - files/patch-settx.c - BROKEN on 4 PR: ports/103002 Submitted by: Diane Bruce (maintainer)
Notes
Notes: svn path=/head/; revision=172597
Diffstat (limited to 'comms/linrad')
-rw-r--r--comms/linrad/Makefile27
-rw-r--r--comms/linrad/distinfo6
-rw-r--r--comms/linrad/files/linrad6
-rw-r--r--comms/linrad/files/patch-Makefile.in59
-rw-r--r--comms/linrad/files/patch-help.c8
-rw-r--r--comms/linrad/files/patch-lmain.c38
-rw-r--r--comms/linrad/files/patch-lsetad.c653
-rw-r--r--comms/linrad/files/patch-lxsys.c23
-rw-r--r--comms/linrad/files/patch-settx.c93
-rw-r--r--comms/linrad/files/patch-uidef.h4
-rw-r--r--comms/linrad/files/patch-xmain.c8
-rw-r--r--comms/linrad/pkg-message8
-rw-r--r--comms/linrad/pkg-plist1
13 files changed, 248 insertions, 686 deletions
diff --git a/comms/linrad/Makefile b/comms/linrad/Makefile
index 864b4aa5be92..3060ef6c8551 100644
--- a/comms/linrad/Makefile
+++ b/comms/linrad/Makefile
@@ -6,10 +6,12 @@
#
PORTNAME= linrad
-PORTVERSION= 2.14
-CATEGORIES= comms hamradio
-MASTER_SITES= http://www.nitehawk.com/sm5bsz/linuxdsp/archive/
-DISTNAME= lir02-14
+PORTVERSION= 2.17
+CATEGORIES= comms
+MASTER_SITES= http://www.nitehawk.com/sm5bsz/linuxdsp/archive/\
+ http://g7rau.demon.co.uk/sm5bsz/linuxdsp/archive/\
+ http://nitehawk.com/sm5bsz/linuxdsp/archive/
+DISTNAME= lir02-17
EXTRACT_SUFX= .tbz
DIST_SUBDIR= ${PORTNAME}
@@ -18,25 +20,33 @@ COMMENT= Amateur Radio DSP utility (SDR)
BUILD_DEPENDS= nasm:${PORTSDIR}/devel/nasm
-WRKSRC= ${WRKDIR}/${PORTNAME}-02.14
+WRKSRC= ${WRKDIR}/${PORTNAME}-02.17
USE_AUTOTOOLS= autoconf:253
HAS_CONFIGURE= yes
USE_BZIP2= yes
+ALL_TARGET= xlinrad
USE_X_PREFIX= yes
ONLY_FOR_ARCHS= i386
+.include <bsd.port.pre.mk>
+.if ${OSVERSION} < 500000
+BROKEN= Does not compile on FreeBSD 4.x
+.endif
+
post-patch:
@${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
-e 's|%%X11BASE%%|${X11BASE}|g' \
- -e 's|-pthread|${PTHREAD_LIBS}|' ${WRKSRC}/Makefile.in
+ -e 's|-lpthread|${PTHREAD_LIBS}|g' ${WRKSRC}/Makefile.in
@${REINPLACE_CMD} -e 's|%%DATADIR%%|${DATADIR}/|' \
${WRKSRC}/help.c
do-install:
${MKDIR} ${DATADIR}
${INSTALL_DATA} ${WRKSRC}/errors.lir ${DATADIR}/errors.lir
${INSTALL_DATA} ${WRKSRC}/help.lir ${DATADIR}/help.lir
-# ${INSTALL_PROGRAM} -m04555 ${WRKSRC}/${PORTNAME} ${PREFIX}/bin/${PORTNAME}
+ ${INSTALL_SCRIPT} -m04555 ${FILESDIR}/linrad ${PREFIX}/bin/linrad
+# Some day we may want the svga version as well.
+# ${INSTALL_PROGRAM} -m04555 ${WRKSRC}/${PORTNAME} ${PREFIX}/bin/${PORTNAME}.svga
${INSTALL_PROGRAM} -m04555 ${WRKSRC}/x${PORTNAME} ${PREFIX}/bin/x${PORTNAME}
.if !defined(NOPORTDOCS)
@@ -57,5 +67,6 @@ do-install:
@${ECHO} "linrad docs installed in ${DOCSDIR}"
@${ECHO} ""
.endif
+ @${CAT} ${PKGMESSAGE}
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
diff --git a/comms/linrad/distinfo b/comms/linrad/distinfo
index 43224bb7acc2..7bac6c4c511a 100644
--- a/comms/linrad/distinfo
+++ b/comms/linrad/distinfo
@@ -1,3 +1,3 @@
-MD5 (linrad/lir02-14.tbz) = a4e451b891459023bb9272d5fe0f590b
-SHA256 (linrad/lir02-14.tbz) = 4a95bf060c900899969e83d0e164ec5e9932ffe34cf2c2485bbea6179fb8e899
-SIZE (linrad/lir02-14.tbz) = 423720
+MD5 (linrad/lir02-17.tbz) = 8c87228f11be0baf48a54ec51992d93e
+SHA256 (linrad/lir02-17.tbz) = c48a3d31a56e147c9c86acfe787bfae96b4c9c81325f64d3ed65844332dad40b
+SIZE (linrad/lir02-17.tbz) = 429631
diff --git a/comms/linrad/files/linrad b/comms/linrad/files/linrad
new file mode 100644
index 000000000000..8febca7ea218
--- /dev/null
+++ b/comms/linrad/files/linrad
@@ -0,0 +1,6 @@
+#!/bin/sh
+if [ ! -e ~/.linrad ] ; then
+ mkdir ~/.linrad
+fi
+cd ~/.linrad
+xlinrad
diff --git a/comms/linrad/files/patch-Makefile.in b/comms/linrad/files/patch-Makefile.in
index 6c414e91c2cb..2d542ce2af13 100644
--- a/comms/linrad/files/patch-Makefile.in
+++ b/comms/linrad/files/patch-Makefile.in
@@ -1,5 +1,5 @@
---- Makefile.in.orig Sat May 27 07:48:22 2006
-+++ Makefile.in Mon Jun 19 21:40:59 2006
+--- Makefile.in.orig Fri Jul 14 17:35:38 2006
++++ Makefile.in Fri Jul 28 13:12:35 2006
@@ -4,17 +4,14 @@
# Name the output files *.ol instead of *.o
# so we definitely know it is for Linux.
@@ -20,58 +20,3 @@
CFW = -g -O -DOSNUM=2 -W -Wimplicit -Wreturn-type -Wformat \
-Wunused -Wcomment -Wchar-subscripts -Wshadow -Wuninitialized \
-Wparentheses -Wstrict-prototypes -Werror -ffast-math \
-@@ -360,7 +357,8 @@
-
-
- # ---------------------- Linux console specific things ------------------
--linrad: Makefile lmain.ol ui.ol uivar.ol fft1var.ol lsetad.ol hware.ol rxin.ol \
-+all: xlinrad
-+linrad: lmain.ol ui.ol uivar.ol fft1var.ol lsetad.ol hware.ol rxin.ol \
- wide_graph.ol getiq.ol fft0.ol fft1.ol adtest.ol screenvar.ol sigvar.ol \
- baseb_graph.ol afc_graph.ol hires_graph.ol fftasm.ol palette.ol gifsave.ol \
- calibrate.ol calsub.ol calsub2.ol llsqvar.ol caliq.ol hwaredriver.ol \
-@@ -374,7 +372,7 @@
- menu.ol screen.ol sdrvar.ol lsys.ol sdr14.ol keyboard_var.ol linvar.ol \
- fonts.ol screensub.ol membeg.ol lxsys.ol memend.ol
-
-- gcc -olinrad -lvgagl -lvga -lpthread -lm \
-+ ${CC} -olinrad -I%%LOCALBASE%%/include -L%%LOCALBASE%%/lib -I%%X11BASE%%/include -L%%X11BASE%%/lib -lvgagl -lvga -lpthread -lm \
- -Wl,-Map,linrad.lmap,-warn-common,--cref \
- membeg.ol lmain.ol linvar.ol ui.ol lsetad.ol fft1.ol buf.ol \
- mouse.ol wide_graph.ol getiq.ol fft0.ol adtest.ol hires_graph.ol \
-@@ -403,7 +401,7 @@
- $(LCC) lmain.c $(CFL) lmain.ol
-
- # ---------------------- Linux X11 specific things ------------------
--xlinrad: Makefile xmain.ol ui.ol uivar.ol fft1var.ol lsetad.ol hware.ol rxin.ol \
-+xlinrad: xmain.ol ui.ol uivar.ol fft1var.ol lsetad.ol hware.ol rxin.ol \
- wide_graph.ol getiq.ol fft0.ol fft1.ol adtest.ol screenvar.ol sigvar.ol \
- baseb_graph.ol afc_graph.ol hires_graph.ol fftasm.ol palette.ol gifsave.ol \
- calibrate.ol calsub.ol calsub2.ol llsqvar.ol caliq.ol hwaredriver.ol \
-@@ -420,7 +418,7 @@
-
-
-
-- gcc -oxlinrad -L/usr/X11R6/lib -lX11 -lpthread -lm \
-+ ${CC} -oxlinrad -L%%X11BASE%%/lib -lX11 -lpthread -lm \
- -Wl,-Map,linrad.xmap,-warn-common,--cref \
- membeg.ol xmain.ol xvar.ol ui.ol lsetad.ol fft1.ol buf.ol \
- mouse.ol wide_graph.ol getiq.ol fft0.ol adtest.ol hires_graph.ol \
-@@ -636,13 +634,13 @@
-
- # ------------------ Tools for Linux -----------------------
- vgatest: vgatest.ol
-- gcc -ovgatest -lvgagl -lvga -lm -Wl -s vgatest.ol
-+ ${CC} -ovgatest -I%%LOCALBASE%%/include -L%%LOCALBASE%%/lib -lvgagl -lvga -lm -Wl -s vgatest.ol
- vgatest.ol: vgatest.c
-- gcc vgatest.c -c -o vgatest.ol
-+ ${CC} vgatest.c -I%%LOCALBASE%%/include -c -o vgatest.ol
- mousetest: mousetest.ol
-- gcc -omousetest -lvgagl -lvga -lm -Wl -s mousetest.ol
-+ ${CC} -omousetest -L%%LOCALBASE%%/lib -lvgagl -lvga -lm -Wl -s mousetest.ol
- mousetest.ol: mousetest.c
-- gcc mousetest.c -c -o mousetest.ol
-+ ${CC} mousetest.c -I%%LOCALBASE%%/include -L%%LOCALBASE%%/lib -c -o mousetest.ol
- thrdef.h: rusage.h
- rm -f x.x
- cp thrdef.h x.x
diff --git a/comms/linrad/files/patch-help.c b/comms/linrad/files/patch-help.c
index 0361d8e7a7bb..d05753c68069 100644
--- a/comms/linrad/files/patch-help.c
+++ b/comms/linrad/files/patch-help.c
@@ -1,6 +1,6 @@
---- help.c.orig Sat May 27 07:48:22 2006
-+++ help.c Tue Jun 20 20:37:14 2006
-@@ -344,7 +344,7 @@
+--- help.c.orig Fri Jul 28 13:12:59 2006
++++ help.c Sat Jul 29 00:50:34 2006
+@@ -337,7 +337,7 @@
printf("\n%s",s);
DEB"\n%s",s);
}
@@ -9,7 +9,7 @@
line=3;
if(screen_mode)
{
-@@ -359,7 +359,7 @@
+@@ -352,7 +352,7 @@
{
int line;
if(msg_no < 0)return;
diff --git a/comms/linrad/files/patch-lmain.c b/comms/linrad/files/patch-lmain.c
deleted file mode 100644
index 8a04628007fc..000000000000
--- a/comms/linrad/files/patch-lmain.c
+++ /dev/null
@@ -1,38 +0,0 @@
---- lmain.c.orig Sat May 27 07:48:22 2006
-+++ lmain.c Sat Jun 17 23:49:10 2006
-@@ -11,7 +11,6 @@
- #define MAX_MOUSE_CURSIZE 50
-
-
--#include <sys/io.h>
- #include <vga.h>
- #include <vgagl.h>
- #include <vgamouse.h>
-@@ -97,6 +96,7 @@
- simd1=0;
- mmx_present=i&1;
- if(mmx_present != 0)simd_present=i/2; else simd_present=0;
-+#if 0
- if(i!=0)
- {
- file = fopen("/proc/cpuinfo", "r");
-@@ -142,9 +142,11 @@
- file=NULL;
- }
- }
-+#endif
- file = fopen(userint_filename, "rb");
- if (file == NULL)
- {
-+#if 0
- if(xxprint != 0)
- {
- i=0;
-@@ -170,6 +172,7 @@
- printf("\nwith appropriate patches.\n\n");
- }
- }
-+#endif
- printf("\nSetup file %s missing.",userint_filename);
- full_setup:;
- for(i=0; i<MAX_UIPARM; i++) uiparm[i]=0;
diff --git a/comms/linrad/files/patch-lsetad.c b/comms/linrad/files/patch-lsetad.c
index 151c30623b7c..93fc61113b4b 100644
--- a/comms/linrad/files/patch-lsetad.c
+++ b/comms/linrad/files/patch-lsetad.c
@@ -1,491 +1,204 @@
---- lsetad.c.orig Sat May 27 07:48:22 2006
-+++ lsetad.c Mon Jun 19 21:43:19 2006
-@@ -36,14 +36,13 @@
-
-
- #define SNDLOG fprintf(sndlog,
--#define ABOVE_MAX_SPEED 768000
- #if SND_DEV == 1
- #define DEVNAME_SIZE 12
--char devname[DEVNAME_SIZE]="/dev/dsp ";
-+char dev_name[DEVNAME_SIZE]="/dev/dsp ";
- #define DEVNAMPOS 8
- #else
- #define DEVNAME_SIZE 18
--char devname[DEVNAME_SIZE]="/dev/sound/dsp ";
-+char dev_name[DEVNAME_SIZE]="/dev/sound/dsp ";
- #define DEVNAMPOS 14
- #endif
- int devmodes[3]={O_RDONLY,O_WRONLY,O_RDWR};
-@@ -58,6 +57,7 @@
- 22050,24000,48000,96000};
-
- FILE *sndlog;
-+int tspeed;
-
- // Mod1: Get info from OSS or ALSA sound-driver about the defined audio
- // devices.
-@@ -481,31 +481,12 @@
-
- void make_devname(int n)
+--- lsetad.c.orig Tue Aug 15 15:27:44 2006
++++ lsetad.c Thu Sep 7 17:52:30 2006
+@@ -87,10 +87,9 @@
+ void display_sdi(void)
{
--int k,num,m;
--num=n;
--k=DEVNAMPOS;
--if(num>MAX_DEVNAMES)
-+if(n>MAX_DEVNAMES)
+ FILE *sdifile;
+-int ch_cnt;
++char *p;
+ char ch_read[80];
+ char work_line [80];
+-int work_line_pos ;
+ int sdi_screen_line_counter;
+ char sdi_intro_msg [26]= "SOUND DRIVER INFORMATION:" ;
+ char sdi_error_msg [46]= "No OSS or ALSA sound-driver information found";
+@@ -111,55 +110,42 @@
+ // if OSS not active, try ALSA
+ if (sdifile==NULL)
{
- lirerr(9236);
- return;
+- strcpy (sndstat_filename,"/proc/asound/oss/sndstat");
+- sdifile=fopen (sndstat_filename,"r");
++ strcpy (sndstat_filename,"/proc/asound/oss/sndstat");
++ sdifile=fopen (sndstat_filename,"r");
}
--m=num/10;
--if(m > 0)
-- {
-- devname[k]=m+'0';
-- k++;
+-if (sdifile==NULL)
++if (sdifile!=NULL)
+ {
+- settextcolor(LIGHT_RED);
+- lir_text ( 80, sdi_screen_line_counter++, sdi_error_msg);
+- fprintf (sndlog,"\n%s",sdi_error_msg );
+- goto display_sdi_x;
- }
--devname[k]=num-m*10+'0';
--if(devname[k]<'0')devname[k]=0;
--k++;
--devname[k]=0;
--// put /dev/dsp at the end of the list
--if ((n+2)==MAX_DEVNAMES){
-- k=DEVNAMPOS;
-- devname[k]=0;
-- k++;
-- devname[k]=0;
-- }
-+ sprintf(dev_name, "/dev/dspW%d", n);
+-fprintf (sndlog,"\n(output of 'cat %s' command): \n\n",sndstat_filename );
+-memset (work_line, '\0',sizeof(work_line));
+-work_line_pos =0;
+-settextcolor(LIGHT_GREEN);
+-ch_cnt=fread(ch_read,1,1,sdifile);
+-while (ch_cnt== 1)
+- {
+-// check if work_line is ready for output processing
+- if ((ch_read[0] =='\n') || (work_line_pos == 78))
+- {
+-// display work_line only if it is not blank
+-// and there are enough lines available on the screen
+-// and there are at least 40 characters available on a line
+- if ((work_line_pos >1) &&
+- ( sdi_screen_line_counter < screen_last_line) &&
+- ((screen_last_col - 40)>= 80))
+- {
+- if (ch_read[0] !='\n') work_line[work_line_pos]=ch_read[0];
+- sdi_screen_line_counter++;
+- lir_text (80, sdi_screen_line_counter, work_line);
+- }
+-// write to soundboard_init.log
+- if (ch_read[0] =='\n') work_line[work_line_pos]=ch_read[0];
+- if (ch_read[0] !='\n')
+- {
+-// this is a truncated line. Add newline character
+- work_line[work_line_pos]=ch_read[0];
+- work_line[work_line_pos+1]='\n';
+- }
+- fprintf (sndlog,"%s",work_line);
+- memset (work_line, '\0',sizeof(work_line));
+- work_line_pos=-1;
+- }
+- work_line[work_line_pos]=ch_read[0];
+- work_line_pos++;
+- ch_cnt=fread(ch_read,1,1,sdifile);
++ fprintf (sndlog,"\n(output of 'cat %s' command): \n\n",sndstat_filename );
++ settextcolor(LIGHT_GREEN);
++ while(fgets(work_line, sizeof(work_line)-1, sdifile) != NULL)
++ {
++ // check if work_line is ready for output processing
++ if((p = strchr(work_line, '\n')) != NULL)
++ *p = '\0';
++ if (ch_read[0] != '\0')
++ {
++ // display work_line only if it is not blank
++ // and there are enough lines available on the screen
++ // and there are at least 40 characters available on a line
++ if (sdi_screen_line_counter < screen_last_line &&
++ (screen_last_col - 40)>= 80)
++ {
++ sdi_screen_line_counter++;
++ lir_text (80, sdi_screen_line_counter, work_line);
++ }
++ // write to soundboard_init.log
++ fprintf (sndlog,"%s\n",work_line);
++ }
++ }
++ fclose(sdifile);
++ }
++else
++ {
++ settextcolor(LIGHT_RED);
++ lir_text ( 80, sdi_screen_line_counter++, sdi_error_msg);
++ fprintf (sndlog,"\n%s",sdi_error_msg );
+ }
+ fclose(sdifile);
+-display_sdi_x:;
+ fprintf(sndlog,sndlog_sep);
+ fflush(sndlog);
}
- // -------------------------------------------------------------
- // The original code was:
-@@ -557,7 +538,7 @@
+@@ -525,6 +511,11 @@
if(i&AFMT_S16_LE)ui.max_output_bytes=2;
ui.max_output_speed=ABOVE_MAX_SPEED;
ui.min_output_speed=1;
--if(ioctl(audio_out, SNDCTL_DSP_SPEED, &ui.max_output_speed) == -1)
-+if(ioctl(audio_out, SNDCTL_DSP_SPEED, &ui.min_output_speed) == -1)
++//
++// To allow a separate #ifdef __FreeBSD__
++// - Diane Bruce VA3DB, Sept 6, 2006
++//
++#ifdef __linux__
+ if(ioctl(audio_out, SNDCTL_DSP_SPEED, &ui.max_output_speed) == -1)
{
lirerr(1072);
- return;
-@@ -666,7 +647,7 @@
+@@ -535,6 +526,7 @@
+ lirerr(1073);
return;
}
- make_devname(ui.ad_device_no&255);
--audio_in=open( devname ,ui.ad_device_mode , 0);
-+audio_in=open( dev_name ,ui.ad_device_mode , 0);
- if(audio_in == -1)
- {
- lirerr(1007);
-@@ -676,7 +657,7 @@
- {
- i=ui.ad_device_no/255-1;
- make_devname(i);
-- audio_in2=open( devname ,ui.ad_device_mode , 0);
-+ audio_in2=open( dev_name ,ui.ad_device_mode , 0);
- if(audio_in2 == -1)
- {
- lirerr(1174);
-@@ -869,7 +850,7 @@
- return;
- }
- make_devname(ui.ad_device_no&255);
-- audio_out=open( devname ,O_WRONLY , 0);
-+ audio_out=open( dev_name ,O_WRONLY , 0);
- if(audio_out == -1)
- {
- lirerr(1086);
-@@ -909,7 +890,7 @@
- else
- {
- make_devname(ui.da_device_no);
-- audio_out=open( devname ,O_WRONLY , 0);
-+ audio_out=open( dev_name ,O_WRONLY , 0);
- if(audio_out == -1)
- {
- if(disksave_flag==2)
-@@ -1048,9 +1029,9 @@
- for(device_no=0; device_no<MAX_DEVNAMES; device_no++)
- {
- make_devname(device_no);
-- SNDLOG"Checking %s for output\n",devname);
-+ SNDLOG"Checking %s for output\n",dev_name);
- sndlog_sync();
-- audio_out=open( devname, O_WRONLY|O_NONBLOCK, 0);
-+ audio_out=open( dev_name, O_WRONLY|O_NONBLOCK, 0);
- if(audio_out != -1)
- {
- #ifdef SNDCTL_DSP_COOKEDMODE
-@@ -1058,7 +1039,7 @@
- ioctl(audio_out, SNDCTL_DSP_COOKEDMODE, &j);
- #endif
- for(nn=0; nn<80; nn++)SNDLOG"-");
-- SNDLOG"\n%s opened as %s ",devname, devmode_txt[3]);
-+ SNDLOG"\n%s opened as %s ",dev_name, devmode_txt[3]);
++#endif
+ if(ui.max_output_speed==ABOVE_MAX_SPEED ||
+ ui.min_output_speed <= 1 ||
+ ui.max_output_speed < ui.min_output_speed)
+@@ -1077,6 +1069,11 @@
+ SNDLOG"\nNo of output channels= %d",j);
sndlog_sync();
- j=AFMT_U8;
- if(ioctl(audio_out, SNDCTL_DSP_SETFMT, &j) == -1)
-@@ -1110,6 +1091,7 @@
+ dev_wr_channels[device_no]=j;
++//
++// To allow a separate #ifdef __FreeBSD__
++// - Diane Bruce VA3DB, Sept 6, 2006
++//
++#ifdef __linux__
+ j=ABOVE_MAX_SPEED;
+ if(ioctl(audio_out, SNDCTL_DSP_SPEED, &j) == -1 || j==ABOVE_MAX_SPEED)
{
- SNDLOG"\nIncorrect speed response in %d out %d",
- ABOVE_MAX_SPEED, j);
-+ tspeed=j;
- if(ioctl(audio_out, SNDCTL_DSP_SPEED, &j)==-1)
- {
- SNDLOG"\nioctl(SPEED) failed");
-@@ -1136,7 +1118,7 @@
- goto errdev;
- }
- sprintf(s,"%02d %s %7d - %7d Hz %d Chan. %d bit WRONLY",
-- device_no, devname,
-+ device_no, dev_name,
- dev_min_wr_speed[device_no],
- dev_max_wr_speed[device_no],
- dev_wr_channels[device_no],
-@@ -1373,20 +1355,20 @@
- {
- dev_flag[device_no]=0;
- make_devname(device_no);
-- SNDLOG"Checking %s\n",devname);
-+ SNDLOG"Checking %s\n",dev_name);
- sndlog_sync();
- for(mode=0; mode<3; mode++)
- {
- k=1<<mode;
- sprintf(s,
- "Trying to open %s %s. Device defective if system hangs here. Read %s ",
-- devname, devmode_txt[mode],logfile_name);
-+ dev_name, devmode_txt[mode],logfile_name);
+@@ -1103,6 +1100,29 @@
+ dev_min_wr_speed[device_no]=j;
+ SNDLOG"\nMin output speed %d", dev_min_wr_speed[device_no]);
sndlog_sync();
- settextcolor(12);
- lir_text(0,line+1,s);
- lir_refresh_screen();
- settextcolor(7);
-- audio_out=open( devname, devmodes[mode]|O_NONBLOCK, 0);
-+ audio_out=open( dev_name, devmodes[mode]|O_NONBLOCK, 0);
- clear_lines(line+1,line+1);
- if(audio_out != -1)
++#endif
++//
++// This code finds min max speed of sound card for FreeBSD
++// It probably works for other BSDs as well
++// Diane Bruce, db@db.net VA3DB
++// Sept 7, 2006
++//
++#ifdef __FreeBSD__
++{
++ snd_capabilities capab;
++ int status;
++ bzero((void *)&capab, sizeof(capab));
++ status = ioctl(audio_out, AIOGCAP, &capab);
++ if (status < 0)
++ goto errdev;
++ dev_min_wr_speed[device_no] = capab.rate_min;
++ dev_max_wr_speed[device_no]= capab.rate_max;
++ ui.min_output_speed = capab.rate_min;
++ ui.max_output_speed = capab.rate_max;
++ SNDLOG"\nMax output speed %d", dev_max_wr_speed[device_no]);
++ SNDLOG"\nMin output speed %d", dev_min_wr_speed[device_no]);
++}
++#endif
+ if(close(audio_out)==-1)
{
-@@ -1395,7 +1377,7 @@
- ioctl(audio_out, SNDCTL_DSP_COOKEDMODE, &i);
- #endif
- for(nn=0; nn<80; nn++)SNDLOG"-");
-- SNDLOG"\n%s opened as %s ",devname, devmode_txt[mode]);
-+ SNDLOG"\n%s opened as %s ",dev_name, devmode_txt[mode]);
+ goto errdev;
+@@ -1425,6 +1445,11 @@
+ SNDLOG"\nMax no of channels = %d",m);
+ }
sndlog_sync();
- rdwr_fmt=16;
- rdwr_channels=0;
-@@ -1465,8 +1447,8 @@
- i=0;
- while(i<MAX_LOWSPEED)
- {
-- rdwr_min_speed=low_speeds[i];
-- if(ioctl(audio_out, SNDCTL_DSP_SPEED, &rdwr_min_speed)!=-1)goto minok;
-+ tspeed=rdwr_min_speed=low_speeds[i];
-+ if(ioctl(audio_out, SNDCTL_DSP_SPEED, &tspeed)!=-1)goto minok;
- i++;
- }
++//
++// To allow a separate #ifdef __FreeBSD__
++// - Diane Bruce VA3DB, Sept 6, 2006
++//
++#ifdef __linux__
+ // Find maximum speed
+ rdwr_max_speed=ABOVE_MAX_SPEED;
+ if(ioctl(audio_out, SNDCTL_DSP_SPEED, &rdwr_max_speed)==-1)
+@@ -1444,6 +1469,27 @@
lirerr(1040);
-@@ -1577,7 +1559,7 @@
- if( (dev_flag[device_no]&1) == 1)
- {
- sprintf(ss,"%02d:%12s %7d - %7d Hz %d Chan. %d bit",
-- device_no,devname,
-+ device_no,dev_name,
- dev_min_rd_speed[device_no],
- dev_max_rd_speed[device_no],
- dev_max_rd_channels[device_no],
-@@ -1588,7 +1570,7 @@
- if( (dev_flag[device_no]&2) == 2)
- {
- sprintf(ss,"%02d:%12s %7d - %7d Hz %d Chan. %d bit",
-- device_no,devname,
-+ device_no,dev_name,
- dev_min_wr_speed[device_no],
- dev_max_wr_speed[device_no],
- dev_wr_channels[device_no],
-@@ -1637,13 +1619,13 @@
- color=0x17;
- sprintf(&ss[maxcolumn],
- "%02d:%12s %7d - %7d Hz %d Chan. %d bit %s",
-- device_no,devname,
-+ device_no,dev_name,
- dev_min_wr_speed[device_no],
- dev_max_wr_speed[device_no],
- dev_wr_channels[device_no],
- dev_wr_bits[device_no],devmode_txt[1]);
- sprintf(ss,"%02d:%12s %7d - %7d Hz %d Chan. %d bit %s",
-- device_no,devname,
-+ device_no,dev_name,
- dev_min_rd_speed[device_no],
- dev_max_rd_speed[device_no],
- dev_max_rd_channels[device_no],
-@@ -1659,21 +1641,21 @@
- color=0x17;
- sprintf(&ss[2*maxcolumn],
- "%02d:%12s %7d - %7d Hz %d Chan. %d bit %s",
-- device_no,devname,
-+ device_no,dev_name,
- dev_min_wr_speed[device_no],
- dev_max_wr_speed[device_no],
- dev_wr_channels[device_no],
- dev_wr_bits[device_no],devmode_txt[1]);
- sprintf(&ss[maxcolumn],
- "%02d:%12s %7d - %7d Hz %d Chan. %d bit %s",
-- device_no,devname,
-+ device_no,dev_name,
- dev_min_rd_speed[device_no],
- dev_max_rd_speed[device_no],
- dev_max_rd_channels[device_no],
- dev_rd_bits[device_no],devmode_txt[0]);
- sprintf(ss,
- "%02d:%12s %7d - %7d Hz %d Chan. %d bit %s",
-- device_no,devname,
-+ device_no,dev_name,
- dev_min_rdwr_speed[device_no],
- dev_max_rdwr_speed[device_no],
- dev_rdwr_channels[device_no],
-@@ -1688,14 +1670,14 @@
- color=0x17;
- sprintf(&ss[maxcolumn],
- "%02d:%12s %7d - %7d Hz %d Chan. %d bit %s",
-- device_no,devname,
-+ device_no,dev_name,
- dev_min_wr_speed[device_no],
- dev_max_wr_speed[device_no],
- dev_wr_channels[device_no],
- dev_wr_bits[device_no],devmode_txt[1]);
- sprintf(ss,
- "%02d:%12s %7d - %7d Hz %d Chan. %d bit %s %s",
-- device_no,devname,
-+ device_no,dev_name,
- dev_min_rd_speed[device_no],
- dev_max_rd_speed[device_no],
- dev_max_rd_channels[device_no],
-@@ -1707,14 +1689,14 @@
- color=0x1d;
- sprintf(&ss[maxcolumn],
- "%02d:%12s %7d - %7d Hz %d Chan. %d bit %s %s",
-- device_no,devname,
-+ device_no,dev_name,
- dev_min_wr_speed[device_no],
- dev_max_wr_speed[device_no],
- dev_wr_channels[device_no], dev_wr_bits[device_no],
- devmode_txt[1],devmode_txt[2]);
- sprintf(ss,
- "%02d:%12s %7d - %7d Hz %d Chan. %d bit %s",
-- device_no,devname,
-+ device_no,dev_name,
- dev_min_rd_speed[device_no],
- dev_max_rd_speed[device_no],
- dev_max_rd_channels[device_no],
-@@ -1822,7 +1804,7 @@
-
- clear_screen();
- make_devname(ui.ad_device_no);
--SNDLOG"\n\n %s selected by user for input.",devname);
-+SNDLOG"\n\n %s selected by user for input.",dev_name);
- SNDLOG" dev_flag=%d",dev_flag[ui.ad_device_no]);
- sndlog_sync();
- // High end users might need two devices to read four A/D channels.
-@@ -1864,7 +1846,7 @@
- clear_screen();
- SNDLOG"\nUser wants to try to open two read devices");
- make_devname(ui.ad_device_no);
-- audio_in=open( devname, O_RDONLY, 0);
-+ audio_in=open( dev_name, O_RDONLY, 0);
- if(audio_in == -1)
- {
- lirerr(1102);
-@@ -1899,7 +1881,7 @@
- }
- }
- make_devname(i);
-- audio_in2=open( devname, O_RDONLY|O_NONBLOCK, 0);
-+ audio_in2=open( dev_name, O_RDONLY|O_NONBLOCK, 0);
- if(audio_in2 != -1)
- {
- #ifdef SNDCTL_DSP_COOKEDMODE
-@@ -1907,9 +1889,9 @@
- ioctl(audio_in2, SNDCTL_DSP_COOKEDMODE, &k);
- #endif
- line++;
-- SNDLOG"\n%s opened as second read device",devname);
-+ SNDLOG"\n%s opened as second read device",dev_name);
- sprintf(s,"%2d:%12s %7d - %7d Hz %d Chan. %d bit",
-- i,devname,
-+ i,dev_name,
- dev_min_rd_speed[i],
- dev_max_rd_speed[i],
- dev_max_rd_channels[i],
-@@ -1945,7 +1927,7 @@
- {
- dev_flag[i]&=255;
- }
-- audio_in2=open( devname, O_RDONLY|O_NONBLOCK, 0);
-+ audio_in2=open( dev_name, O_RDONLY|O_NONBLOCK, 0);
- if(audio_in2 == -1)
- {
- lirerr(1172);
-@@ -1968,7 +1950,7 @@
- close(audio_in2);
- goto skip_dual_devices;
- }
-- SNDLOG"\n %s is second input device.",devname);
-+ SNDLOG"\n %s is second input device.",dev_name);
- ui.input_mode=TWO_CHANNELS+IQ_DATA;
- ui.rx_channels=2;
- ui.ad_channels=4;
-@@ -1988,7 +1970,7 @@
- if( (1 & dev_flag[ui.ad_device_no]) != 0)
- {
- gt_rdo:;
-- sprintf(s,"Open %s as RDONLY or RDWR? (O/W) =>",devname);
-+ sprintf(s,"Open %s as RDONLY or RDWR? (O/W) =>",dev_name);
- lir_text(10,10,s);
- await_processed_keyboard();
- if(kill_all_flag) goto setad_errexit;
-@@ -2010,9 +1992,9 @@
- }
- sndlog_sync();
- clear_screen();
--sprintf(s,"For analog input: %s opened in %s mode",devname,devmode_txt[mode]);
-+sprintf(s,"For analog input: %s opened in %s mode",dev_name,devmode_txt[mode]);
- lir_text(0,0,s);
--audio_in=open( devname, ui.ad_device_mode, 0);
-+audio_in=open( dev_name, ui.ad_device_mode, 0);
- if(audio_in == -1)
- {
- lirerr(1038);
-@@ -2108,13 +2090,16 @@
- lir_text(0,7,"to reconfigure the hardware. (Under OSS, run ossmix)");
- max=dev_max_rd_speed[ui.ad_device_no&255];
- min=dev_min_rd_speed[ui.ad_device_no&255];
-+#if 0
- if(max == ABOVE_MAX_SPEED || max < 1000)
- {
- max = ABOVE_MAX_SPEED;
- speed_warning = 1;
- }
+ goto setad_errexit;
+ minok:;
+#endif
- sprintf(s,"Select sampling speed(%d to %d)", min,max);
- lir_text(0,10,s);
-+#if 0
- if(speed_warning != 0)
- {
- settextcolor(12);
-@@ -2123,6 +2108,7 @@
- lir_text(0,13,"Incorrect (not supported) values may cause system to hang");
- settextcolor(7);
- }
++//
++// This code finds min max speed of sound card for FreeBSD
++// It probably works for other BSDs as well
++// Diane Bruce, db@db.net VA3DB
++// Sept 7, 2006
++//
++#ifdef __FreeBSD__
++{
++ snd_capabilities capab;
++ int status;
++ bzero((void *)&capab, sizeof(capab));
++ status = ioctl(audio_out, AIOGCAP, &capab);
++ if (status < 0)
++ goto setad_errexit;
++ rdwr_min_speed = capab.rate_min;
++ rdwr_max_speed = capab.rate_max;
++ SNDLOG"\nMin output speed %d", rdwr_min_speed);
++ SNDLOG"\nMax output speed %d", rdwr_max_speed);
++}
+#endif
- column=0;
- while(s[column] != 0)column++;
- ui.input_speed=lir_get_integer(column+2, 10, 8, min,max);
-@@ -2131,6 +2117,7 @@
- rdwr_max_speed=ui.input_speed;
- SNDLOG"\n%d Hz selected by user",ui.input_speed);
- clear_lines(5,10);
-+ui.input_speed;
- if(ioctl(audio_in, SNDCTL_DSP_SPEED, &ui.input_speed)==-1)
- {
- lirerr(1041);
-@@ -2249,7 +2236,7 @@
- goto setad_errexit;
- }
- settextcolor(12);
--sprintf(s,"Trying to read %s",devname);
-+sprintf(s,"Trying to read %s",dev_name);
- lir_text(10,10,s);
- lir_text(0,12,"If you see this message for more than 2 seconds READ failed");
- lir_text(0,13,"Then try another device");
-@@ -2313,7 +2300,7 @@
- }
- SNDLOG"\nRead test OK");
- clear_lines(10,13);
--sprintf(s,"Now trying to open a second device while %s is open",devname);
-+sprintf(s,"Now trying to open a second device while %s is open",dev_name);
- lir_text(0,6,s);
- lir_text(0,7,"This may cause your system to hang. Try ctrlC to exit (or reboot)");
- lir_text(0,8,"Try another input device or install another sound system.");
-@@ -2326,7 +2313,7 @@
- if(read_test_ad(testbuff)!=0)goto clr_wrdev;
- make_devname(i);
- cn=0;
-- sprintf(s,"%02d:%12s",i,devname);
-+ sprintf(s,"%02d:%12s",i,dev_name);
- lir_text(0,line,s);
- column=0;
- while(s[column] != 0)column++;
-@@ -2338,7 +2325,7 @@
- if( (ui.input_mode&DWORD_INPUT) != 0 || ui.ad_channels > 2)
- {
- sprintf(&s[column],
-- " RDWR useless (too many bits or channels) %d: %s",i,devname);
-+ " RDWR useless (too many bits or channels) %d: %s",i,dev_name);
- dev_flag[i]=0;
- }
- else
-@@ -2356,7 +2343,7 @@
- dev_flag[i]&=0xffff-4;
- if( (dev_flag[i]&2) != 0 )
- {
-- audio_out=open( devname, O_WRONLY|O_NONBLOCK, 0);
-+ audio_out=open( dev_name, O_WRONLY|O_NONBLOCK, 0);
- if(read_test_ad(testbuff)!=0)goto clr_wrdev;
- if(audio_out != -1)
- {
-@@ -2364,7 +2351,7 @@
- j=0;
- ioctl(audio_out, SNDCTL_DSP_COOKEDMODE, &j);
- #endif
-- SNDLOG"\n%s opened as WRONLY",devname);
-+ SNDLOG"\n%s opened as WRONLY",dev_name);
- sndlog_sync();
- if(ioctl(audio_in, SNDCTL_DSP_GETISPACE, &ad_info) == -1)
- {
-@@ -2562,20 +2549,20 @@
- for(i=0; i<MAX_DEVNAMES; i++)
- {
- make_devname(i);
-- SNDLOG"\n%s ",devname);
-+ SNDLOG"\n%s ",dev_name);
- cn=0;
-- sprintf(s,"%02d:%12s",i,devname);
-+ sprintf(s,"%02d:%12s",i,dev_name);
- lir_text(0,line,s);
- column=0;
- while(s[column] != 0)column++;
-- audio_out=open( devname, O_WRONLY|O_NONBLOCK, 0);
-+ audio_out=open( dev_name, O_WRONLY|O_NONBLOCK, 0);
- if(audio_out != -1)
- {
- #ifdef SNDCTL_DSP_COOKEDMODE
- j=0;
- ioctl(audio_out, SNDCTL_DSP_COOKEDMODE, &j);
- #endif
-- SNDLOG"\n%s opened as WRONLY with no input open.",devname);
-+ SNDLOG"\n%s opened as WRONLY with no input open.",dev_name);
+ SNDLOG"\nMin sampling speed = %d Hz",rdwr_min_speed);
sndlog_sync();
- j=AFMT_U8;
- if(ioctl(audio_out, SNDCTL_DSP_SETFMT, &j) == -1)
-@@ -2727,7 +2714,7 @@
- // -------------------------------------------------------
- }
- make_devname(ui.da_device_no);
--SNDLOG"\nUser selected %s for output.",devname);
-+SNDLOG"\nUser selected %s for output.",dev_name);
- clear_sdi();
- clear_lines(6,line);
- lir_text(0,8,"Use close and reopen for D/A when a new signal is");
-@@ -2762,8 +2749,8 @@
- }
- else
- {
-- audio_out=open( devname ,O_WRONLY , 0);
-- sprintf(s,"Using %s for output",devname);
-+ audio_out=open( dev_name ,O_WRONLY , 0);
-+ sprintf(s,"Using %s for output",dev_name);
- lir_text(0,6,s);
- if(audio_out == -1)
- {
+ if(mode != 1)
diff --git a/comms/linrad/files/patch-lxsys.c b/comms/linrad/files/patch-lxsys.c
index 66c73384a542..14292de1cf74 100644
--- a/comms/linrad/files/patch-lxsys.c
+++ b/comms/linrad/files/patch-lxsys.c
@@ -1,6 +1,6 @@
---- lxsys.c.orig Sat May 27 07:48:22 2006
-+++ lxsys.c Mon Jun 19 23:32:08 2006
-@@ -1,5 +1,7 @@
+--- lxsys.c.orig Tue Aug 15 15:27:44 2006
++++ lxsys.c Fri Sep 8 16:35:10 2006
+@@ -1,12 +1,14 @@
-
-#include <sys/io.h>
+#include <sys/cdefs.h>
@@ -9,8 +9,16 @@
+#include <machine/sysarch.h>
#include <unistd.h>
#include <sys/mman.h>
++#include <sys/time.h>
#include <sys/resource.h>
-@@ -14,6 +16,7 @@
+ #include <semaphore.h>
+ #include <pthread.h>
+ #include <sched.h>
+-#include <sys/time.h>
+ #include <fcntl.h>
+ #include <termios.h>
+ #include "thrdef.h"
+@@ -16,6 +18,7 @@
#include "lindef.h"
#include "hwaredef.h"
@@ -18,7 +26,7 @@
char *locktext[6]={"*W A R N I N G* Read z_MLOCK.txt for info.",
"*** mlockall can cause system crashes!! ***",
-@@ -40,11 +43,9 @@
+@@ -66,11 +69,9 @@
// Get permission to write to the parallel port
if(ui.parport < 0x400-4)
{
@@ -33,7 +41,7 @@
}
if(i != 0)
{
-@@ -189,11 +190,9 @@
+@@ -214,11 +215,9 @@
int i;
if(ui.parport < 0x400-4)
{
@@ -48,7 +56,7 @@
}
if(i!=0)lirerr(764921);
i=1000;
-@@ -206,11 +205,9 @@
+@@ -231,11 +230,9 @@
int i;
if(ui.parport < 0x400-4)
{
@@ -63,3 +71,4 @@
}
if(i!=0)lirerr(764921);
return inb(port);
+
diff --git a/comms/linrad/files/patch-settx.c b/comms/linrad/files/patch-settx.c
deleted file mode 100644
index 8414a34a7fd8..000000000000
--- a/comms/linrad/files/patch-settx.c
+++ /dev/null
@@ -1,93 +0,0 @@
---- settx.c.orig Wed Jun 7 15:31:03 2006
-+++ settx.c Wed Jun 7 15:32:01 2006
-@@ -21,7 +21,7 @@
- #define LEVEL_METER_X 65
-
- extern void make_devname(int device_no);
--extern char devname[];
-+extern char dev_name[];
- extern char *devmode_txt[3];
-
- #if SND_DEV == 1
-@@ -73,7 +73,7 @@
- int i,j;
- float t1;
- make_devname(tx.ad_device_no);
--tx_audio_in=open( devname, O_RDONLY, 0);
-+tx_audio_in=open( dev_name, O_RDONLY, 0);
- if(tx_audio_in == -1)lirerr(991111);
- i=AFMT_S16_LE;
- #ifdef AFMT_S32_LE
-@@ -107,7 +107,7 @@
- int i,j;
- float t1;
- make_devname(tx.da_device_no);
--tx_audio_out=open( devname, O_WRONLY|O_NONBLOCK, 0);
-+tx_audio_out=open( dev_name, O_WRONLY|O_NONBLOCK, 0);
- if(tx_audio_out == -1)lirerr(231111);
- i=AFMT_S16_LE;
- #ifdef AFMT_S32_LE
-@@ -300,11 +300,11 @@
- make_devname(device_no);
- {
- sprintf(s,"Trying to open %s %s. Device defective if system hangs here.",
-- devname, devmode_txt[1]);
-+ dev_name, devmode_txt[1]);
- settextcolor(12);
- lir_text(0,line+1,s);
- settextcolor(7);
-- tx_audio_out=open( devname, O_WRONLY|O_NONBLOCK, 0);
-+ tx_audio_out=open( dev_name, O_WRONLY|O_NONBLOCK, 0);
- if(tx_audio_out != -1)
- {
- line++;
-@@ -374,7 +374,7 @@
- }
- dev_min_speed[device_no]=rdwr_speed;
- settextcolor(7);
-- sprintf(s," %02d %s ",device_no,devname);
-+ sprintf(s," %02d %s ",device_no,dev_name);
- lir_text(0,line,s);
- sprintf(s,"%s ",devmode_txt[1]);
- if(rdwr_channels==3)
-@@ -516,7 +516,7 @@
- }
- clear_screen();
- make_devname(tx.da_device_no);
--sprintf(s,"Tx output: %s, %d channel(s), %d bits, %d Hz",devname,
-+sprintf(s,"Tx output: %s, %d channel(s), %d bits, %d Hz",dev_name,
- tx.output_channels,tx.output_bytes<<3,tx.output_speed);
- settextcolor(14);
- lir_text(15,0,s);
-@@ -578,11 +578,11 @@
- make_devname(device_no);
- {
- sprintf(s,"Trying to open %s %s. Device defective if system hangs here.",
-- devname, devmode_txt[0]);
-+ dev_name, devmode_txt[0]);
- settextcolor(12);
- lir_text(0,line+1,s);
- settextcolor(7);
-- tx_audio_in=open( devname, O_RDONLY|O_NONBLOCK, 0);
-+ tx_audio_in=open( dev_name, O_RDONLY|O_NONBLOCK, 0);
- if(tx_audio_in != -1)
- {
- line++;
-@@ -652,7 +652,7 @@
- }
- dev_min_speed[device_no]=rdwr_speed;
- settextcolor(7);
-- sprintf(s," %02d %s ",device_no,devname);
-+ sprintf(s," %02d %s ",device_no,dev_name);
- lir_text(0,line,s);
- sprintf(s,"%s ",devmode_txt[0]);
- if(rdwr_channels==3)
-@@ -774,7 +774,7 @@
- clear_screen();
- make_devname(tx.ad_device_no);
-
--sprintf(s,"Microphone input: %s, %d channel(s), %d bits, %d Hz",devname,
-+sprintf(s,"Microphone input: %s, %d channel(s), %d bits, %d Hz",dev_name,
- tx.input_channels,tx.input_bytes<<3,tx.input_speed);
- settextcolor(14);
- lir_text(15,0,s);
diff --git a/comms/linrad/files/patch-uidef.h b/comms/linrad/files/patch-uidef.h
index b11e12dff47e..137fdf05e921 100644
--- a/comms/linrad/files/patch-uidef.h
+++ b/comms/linrad/files/patch-uidef.h
@@ -1,5 +1,5 @@
---- uidef.h.orig Mon Jun 19 20:18:17 2006
-+++ uidef.h Mon Jun 19 20:18:24 2006
+--- uidef.h.orig Sat Jul 29 16:29:21 2006
++++ uidef.h Sat Jul 29 16:29:34 2006
@@ -5,7 +5,7 @@
diff --git a/comms/linrad/files/patch-xmain.c b/comms/linrad/files/patch-xmain.c
index 32db8e4f53b1..9220782aa15a 100644
--- a/comms/linrad/files/patch-xmain.c
+++ b/comms/linrad/files/patch-xmain.c
@@ -1,6 +1,6 @@
---- xmain.c.orig Mon Jun 19 22:40:14 2006
-+++ xmain.c Mon Jun 19 23:33:03 2006
-@@ -38,7 +38,7 @@
+--- xmain.c.orig Fri Jul 14 17:35:38 2006
++++ xmain.c Fri Jul 28 12:45:20 2006
+@@ -39,7 +39,7 @@
float total;
}PIXINFO;
@@ -9,7 +9,7 @@
int main(int argc, char **argv)
{
-@@ -58,6 +58,8 @@
+@@ -59,6 +59,8 @@
XTextProperty window_title_property;
unsigned short int *ipalette;
XColor xco;
diff --git a/comms/linrad/pkg-message b/comms/linrad/pkg-message
new file mode 100644
index 000000000000..3e2983b8b8df
--- /dev/null
+++ b/comms/linrad/pkg-message
@@ -0,0 +1,8 @@
+linrad is now installed.
+linrad is now a shell script which "wraps" xlinrad.
+When used for the first time, the linrad wrapper will create a ~/.linrad
+directory which will be your working directory.
+
+Now, go chase some DX.
+
+- 73 Diane VA3DB
diff --git a/comms/linrad/pkg-plist b/comms/linrad/pkg-plist
index b1166f8fe50e..d80a8b195922 100644
--- a/comms/linrad/pkg-plist
+++ b/comms/linrad/pkg-plist
@@ -1,3 +1,4 @@
+bin/linrad
bin/xlinrad
%%DATADIR%%/errors.lir
%%DATADIR%%/help.lir