diff options
author | Stephen Hurd <shurd@FreeBSD.org> | 2019-07-22 17:27:23 +0000 |
---|---|---|
committer | Stephen Hurd <shurd@FreeBSD.org> | 2019-07-22 17:27:23 +0000 |
commit | 22474ce74423630b9aa6a1905a1ba7b529486cb0 (patch) | |
tree | 997116cd1dcba87a27db13b96d80530015b6f57e | |
parent | f830779ba2d567e1f3fa56c92c1a0d69fef9b1bc (diff) | |
download | ports-22474ce74423630b9aa6a1905a1ba7b529486cb0.tar.gz ports-22474ce74423630b9aa6a1905a1ba7b529486cb0.zip |
Notes
-rw-r--r-- | comms/direwolf/Makefile | 23 | ||||
-rw-r--r-- | comms/direwolf/distinfo | 6 | ||||
-rw-r--r-- | comms/direwolf/files/Makefile.FreeBSD | 549 | ||||
-rw-r--r-- | comms/direwolf/files/patch-Makefile | 17 | ||||
-rw-r--r-- | comms/direwolf/files/patch-Makefile.linux | 409 | ||||
-rw-r--r-- | comms/direwolf/files/patch-dw-start.sh | 53 | ||||
-rw-r--r-- | comms/direwolf/files/patch-dwgpsd.c | 13 | ||||
-rw-r--r-- | comms/direwolf/files/patch-ptt.c | 11 | ||||
-rw-r--r-- | comms/direwolf/pkg-plist | 31 |
9 files changed, 489 insertions, 623 deletions
diff --git a/comms/direwolf/Makefile b/comms/direwolf/Makefile index cffba9868298..1ce003005209 100644 --- a/comms/direwolf/Makefile +++ b/comms/direwolf/Makefile @@ -1,33 +1,36 @@ # $FreeBSD$ PORTNAME= direwolf -PORTVERSION= 1.4 -PORTREVISION= 1 +DISTVERSION= 1.5 CATEGORIES= comms hamradio -MAINTAINER= kevans@FreeBSD.org +MAINTAINER= hamradio@FreeBSD.org COMMENT= Software "soundcard" modem/TNC and APRS encoder/decoder LICENSE= GPLv2 -LIB_DEPENDS= libhamlib.so:comms/hamlib \ +LIB_DEPENDS= libasound.so:audio/alsa-lib\ + libhamlib.so:comms/hamlib \ libgps.so:astro/gpsd +USES= gmake python shebangfix + USE_GITHUB= yes GH_ACCOUNT= wb2osz -GH_TAGNAME= 6207e2e -USES= dos2unix gmake python shebangfix +GH_TAGNAME= 1.5 SHEBANG_FILES= telemetry-toolkit/telem-bits.pl telemetry-toolkit/telem-parm.pl\ telemetry-toolkit/telem-eqns.pl dwespeak.sh \ telemetry-toolkit/telem-volts.py telemetry-toolkit/telem-data.pl \ telemetry-toolkit/telem-data91.pl \ - telemetry-toolkit/telem-unit.pl telemetry-toolkit/telem-balloon.pl + telemetry-toolkit/telem-unit.pl telemetry-toolkit/telem-balloon.pl\ + dw-start.sh -OPTIONS_DEFINE= DOCS +OPTIONS_DEFINE= DOCS EXAMPLES +MAKEFILE= Makefile.linux post-patch: - ${CP} ${FILESDIR}/Makefile.FreeBSD ${WRKSRC} - ${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|' ${WRKSRC}/dw-start.sh + @${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|'\ + -e 's|/var/tmp|/var/log|' ${WRKSRC}/dw-start.sh .include <bsd.port.mk> diff --git a/comms/direwolf/distinfo b/comms/direwolf/distinfo index 787514ff9a59..089e74f2b6f6 100644 --- a/comms/direwolf/distinfo +++ b/comms/direwolf/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1494361181 -SHA256 (wb2osz-direwolf-1.4-6207e2e_GH0.tar.gz) = d3a42b5207935e38bfa4902a76daf684269f9cb71bcc271d80508293e40ac6a9 -SIZE (wb2osz-direwolf-1.4-6207e2e_GH0.tar.gz) = 13849018 +TIMESTAMP = 1549716498 +SHA256 (wb2osz-direwolf-1.5_GH0.tar.gz) = 2e263ea4fa75c342b620dee048436ac95486ea3f93599ad818e74dfd4aec8b48 +SIZE (wb2osz-direwolf-1.5_GH0.tar.gz) = 17996557 diff --git a/comms/direwolf/files/Makefile.FreeBSD b/comms/direwolf/files/Makefile.FreeBSD deleted file mode 100644 index 98625bd81c4c..000000000000 --- a/comms/direwolf/files/Makefile.FreeBSD +++ /dev/null @@ -1,549 +0,0 @@ -# -# Makefile for FreeBSD version of Dire Wolf. -# - -APPS := direwolf decode_aprs text2tt tt2text ll2utm utm2ll aclients atest log2gpx gen_packets ttcalc - -all : $(APPS) direwolf.desktop direwolf.conf - @echo " " - @echo "Next step - install with:" - @echo " " - @echo " sudo make install" - @echo " " - -CFLAGS += -I${LOCALBASE}/include -CFLAGS += -pthread -Igeotranz - -LDFLAGS := -lm -lpthread -L${LOCALBASE}/lib - -#CFLAGS += -mfpu=neon - -#CFLAGS += -DUSE_ALSA -#LDFLAGS += -lasound - -enable_gpsd := $(wildcard /usr/local/include/gps.h) -ifneq ($(enable_gpsd),) -CFLAGS += -DENABLE_GPSD -LDFLAGS += -lgps -endif - - -# Uncomment following lines to enable hamlib support. -CFLAGS += -DUSE_HAMLIB -LDFLAGS += -lhamlib - - -# Name of current directory. -# Used to generate zip file name for distribution. - -z := $(notdir ${CURDIR}) - - - -# -------------------------------- Main application ----------------------------------------- - - - -direwolf : direwolf.o config.o recv.o demod.o dsp.o demod_afsk.o demod_9600.o hdlc_rec.o \ - hdlc_rec2.o multi_modem.o redecode.o rdq.o rrbb.o dlq.o \ - fcs_calc.o ax25_pad.o \ - decode_aprs.o symbols.o server.o kiss.o kissnet.o kiss_frame.o hdlc_send.o fcs_calc.o \ - gen_tone.o audio.o audio_stats.o digipeater.o pfilter.o dedupe.o tq.o xmit.o morse.o \ - ptt.o beacon.o encode_aprs.o latlong.o encode_aprs.o latlong.o textcolor.o \ - dtmf.o aprs_tt.o tt_user.o tt_text.o igate.o nmea.o serial_port.o log.o telemetry.o \ - dwgps.o dwgpsnmea.o dwgpsd.o dtime_now.o \ - geotranz.a - $(CC) -o $@ $^ $(LDFLAGS) -ifneq ($(enable_gpsd),) - @echo " " - @echo "This includes support for gpsd." -else - @echo " " - @echo "This does NOT include support for gpsd." -endif - -# Optimization for slow processors. - -demod.o : fsk_fast_filter.h - -demod_afsk.o : fsk_fast_filter.h - - -fsk_fast_filter.h : demod_afsk.c - $(CC) $(CFLAGS) -o gen_fff -DGEN_FFF demod_afsk.c dsp.c textcolor.c $(LDFLAGS) - ./gen_fff > fsk_fast_filter.h - - - -# Separate application to decode raw data. - -decode_aprs : decode_aprs.c dwgpsnmea.o dwgps.o dwgpsd.o serial_port.o symbols.o ax25_pad.o textcolor.o fcs_calc.o latlong.o log.o telemetry.o tt_text.o - $(CC) $(CFLAGS) -DDECAMAIN -o $@ $^ $(LDFLAGS) - -# Convert between text and touch tone representation. - -text2tt : tt_text.c - $(CC) $(CFLAGS) -DENC_MAIN -o $@ $^ $(LDFLAGS) - -tt2text : tt_text.c - $(CC) $(CFLAGS) -DDEC_MAIN -o $@ $^ $(LDFLAGS) - - -# Convert between Latitude/Longitude and UTM coordinates. - -ll2utm : ll2utm.c geotranz.a textcolor.o - $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS) - -utm2ll : utm2ll.c geotranz.a textcolor.o - $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS) - - -# Convert from log file to GPX. - -log2gpx : log2gpx.c textcolor.o - $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS) - - -# Test application to generate sound. - -gen_packets : gen_packets.c ax25_pad.c hdlc_send.c fcs_calc.c gen_tone.c morse.c textcolor.c dsp.c - $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS) - -# Unit test for AFSK demodulator - -atest : atest.c demod.o demod_afsk.o demod_9600.o \ - dsp.o hdlc_rec.o hdlc_rec2.o multi_modem.o rrbb.o \ - fcs_calc.o ax25_pad.o decode_aprs.o dwgpsnmea.o \ - dwgps.o dwgpsd.o serial_port.o telemetry.o latlong.o symbols.o tt_text.o textcolor.o - - $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS) - - -# Multiple AGWPE network or serial port clients to test TNCs side by side. - -aclients : aclients.c ax25_pad.c fcs_calc.c textcolor.o - $(CC) $(CFLAGS) -g -o $@ $^ - - -# Touch Tone to Speech sample application. - -ttcalc : ttcalc.o ax25_pad.o fcs_calc.o textcolor.o - $(CC) $(CFLAGS) -g -o $@ $^ - - -# ----------------------------------------- Libraries -------------------------------------------- - -# UTM, USNG, MGRS conversions. - -geotranz.a : error_string.o mgrs.o polarst.o tranmerc.o ups.o usng.o utm.o - ar -cr $@ $^ - -error_string.o : geotranz/error_string.c - $(CC) $(CFLAGS) -c -o $@ $^ - -mgrs.o : geotranz/mgrs.c - $(CC) $(CFLAGS) -c -o $@ $^ - -polarst.o : geotranz/polarst.c - $(CC) $(CFLAGS) -c -o $@ $^ - -tranmerc.o : geotranz/tranmerc.c - $(CC) $(CFLAGS) -c -o $@ $^ - -ups.o : geotranz/ups.c - $(CC) $(CFLAGS) -c -o $@ $^ - -usng.o : geotranz/usng.c - $(CC) $(CFLAGS) -c -o $@ $^ - -utm.o : geotranz/utm.c - $(CC) $(CFLAGS) -c -o $@ $^ - - - -# ------------------------------------- Installation ---------------------------------- - - - -# Generate apprpriate sample configuration file for this platform. -# Originally, there was one sample for all platforms. It got too cluttered -# and confusing saying, this is for windows, and this is for Linux, and this ... -# Trying to maintain 3 different versions in parallel is error prone. -# We now have a single generic version which can be used to generate -# the various platform specific versions. - -# generic.conf should be checked into source control. -# direwolf.conf should NOT. It is generated when compiling on the target platform. - -direwolf.conf : generic.conf - egrep '^C|^L' generic.conf | cut -c2-999 > direwolf.conf - - -# Where should we install it? - -# My understanding, of the convention, is that something you compile -# from source, that is not a standard part of the operating system, -# should go in /usr/local/bin. - -# However, if you are preparing a "binary" DEB or RPM package, the -# installation location should be /usr/bin. - -# This is a step in the right direction but not sufficient to use /usr instead. -# Eventually I'd like to have targets here to build the .DEB and .RPM packages. - -INSTALLDIR := ${DESTDIR}${PREFIX} -SHAREDIR := ${INSTALLDIR}/share - -# Command to "install" to system directories. Use "ginstall" for Mac. - -INSTALL=install - -# direwolf.desktop was previously handcrafted for the Raspberry Pi. -# It was hardcoded with lxterminal, /home/pi, and so on. -# In version 1.2, try to customize this to match other situations better. - -# TODO: Test this better. - - -direwolf.desktop : - @echo "Generating customized direwolf.desktop ..." - @echo '[Desktop Entry]' > $@ - @echo 'Type=Application' >> $@ -ifneq ($(wildcard /usr/bin/lxterminal),) - @echo "Exec=lxterminal -t \"Dire Wolf\" -e \"$(PREFIX)/bin/direwolf\"" >> $@ -else ifneq ($(wildcard /usr/local/bin/lxterm),) - @echo "Exec=lxterm -hold -title \"Dire Wolf\" -bg white -e \"$(PREFIX)/bin/direwolf\"" >> $@ -else - @echo "Exec=xterm -hold -title \"Dire Wolf\" -bg white -e \"$(PREFIX)/bin/direwolf\"" >> $@ -endif - @echo 'Name=Dire Wolf' >> $@ - @echo 'Comment=APRS Soundcard TNC' >> $@ - @echo 'Icon=${PREFIX}/share/direwolf/dw-icon.png' >> $@ - @echo "Path=$(HOME)" >> $@ - @echo '#Terminal=true' >> $@ - @echo 'Categories=HamRadio' >> $@ - @echo 'Keywords=Ham Radio;APRS;Soundcard TNC;KISS;AGWPE;AX.25' >> $@ - - -# Installation into /usr/local/... -# Needs to be run as root or with sudo. - - -.PHONY: install -install : $(APPS) direwolf.conf tocalls.txt symbols-new.txt symbolsX.txt dw-icon.png direwolf.desktop -# -# Applications, not installed with package manager, normally go in /usr/local/bin. -# /usr/bin is used instead when installing from .DEB or .RPM package. -# - $(BSD_INSTALL_PROGRAM) direwolf $(INSTALLDIR)/bin - $(BSD_INSTALL_PROGRAM) decode_aprs $(INSTALLDIR)/bin - $(BSD_INSTALL_PROGRAM) text2tt $(INSTALLDIR)/bin - $(BSD_INSTALL_PROGRAM) tt2text $(INSTALLDIR)/bin - $(BSD_INSTALL_PROGRAM) ll2utm $(INSTALLDIR)/bin - $(BSD_INSTALL_PROGRAM) utm2ll $(INSTALLDIR)/bin - $(BSD_INSTALL_PROGRAM) aclients $(INSTALLDIR)/bin - $(BSD_INSTALL_PROGRAM) log2gpx $(INSTALLDIR)/bin - $(BSD_INSTALL_PROGRAM) gen_packets $(INSTALLDIR)/bin - $(BSD_INSTALL_PROGRAM) atest $(INSTALLDIR)/bin - $(BSD_INSTALL_PROGRAM) ttcalc $(INSTALLDIR)/bin - $(BSD_INSTALL_SCRIPT) dwespeak.sh $(INSTALLDIR)/bin -# -# Telemetry Toolkit executables. Other .conf and .txt files will go into doc directory. -# - $(BSD_INSTALL_SCRIPT) telemetry-toolkit/telem-balloon.pl $(INSTALLDIR)/bin - $(BSD_INSTALL_SCRIPT) telemetry-toolkit/telem-bits.pl $(INSTALLDIR)/bin - $(BSD_INSTALL_SCRIPT) telemetry-toolkit/telem-data.pl $(INSTALLDIR)/bin - $(BSD_INSTALL_SCRIPT) telemetry-toolkit/telem-data91.pl $(INSTALLDIR)/bin - $(BSD_INSTALL_SCRIPT) telemetry-toolkit/telem-eqns.pl $(INSTALLDIR)/bin - $(BSD_INSTALL_SCRIPT) telemetry-toolkit/telem-parm.pl $(INSTALLDIR)/bin - $(BSD_INSTALL_SCRIPT) telemetry-toolkit/telem-seq.sh $(INSTALLDIR)/bin - $(BSD_INSTALL_SCRIPT) telemetry-toolkit/telem-unit.pl $(INSTALLDIR)/bin - $(BSD_INSTALL_SCRIPT) telemetry-toolkit/telem-volts.py $(INSTALLDIR)/bin -# -# Misc. data such as "tocall" to system mapping. -# - mkdir -p ${SHAREDIR}/direwolf - $(BSD_INSTALL_DATA) tocalls.txt ${SHAREDIR}/direwolf/tocalls.txt - $(BSD_INSTALL_DATA) symbols-new.txt ${SHAREDIR}/direwolf/symbols-new.txt - $(BSD_INSTALL_DATA) symbolsX.txt ${SHAREDIR}/direwolf/symbolsX.txt - $(BSD_INSTALL_DATA) dw-icon.png ${SHAREDIR}/direwolf/dw-icon.png - mkdir -p ${SHAREDIR}/applications - $(BSD_INSTALL_DATA) direwolf.desktop ${SHAREDIR}/applications/direwolf.desktop -# -# Documentation. Various plain text files and PDF. -# $(INSTALL) CHANGES.md $(INSTALLDIR)/share/doc/direwolf/CHANGES.md - mkdir -p ${INSTALLDIR}/share/doc/direwolf - mkdir -p ${INSTALLDIR}/share/direwolf - $(BSD_INSTALL_DATA) LICENSE-dire-wolf.txt $(INSTALLDIR)/share/doc/direwolf/LICENSE-dire-wolf.txt - $(BSD_INSTALL_DATA) LICENSE-other.txt $(INSTALLDIR)/share/doc/direwolf/LICENSE-other.txt -# -# ./README.md is an overview for the project main page. -# doc/README.md contains an overview of the PDF file contents and is more useful here. -# - $(BSD_INSTALL_DATA) doc/README.md $(INSTALLDIR)/share/doc/direwolf/README.md - $(BSD_INSTALL_DATA) doc/User-Guide.pdf $(INSTALLDIR)/share/doc/direwolf/User-Guide.pdf - $(BSD_INSTALL_DATA) doc/Raspberry-Pi-APRS.pdf $(INSTALLDIR)/share/doc/direwolf/Raspberry-Pi-APRS.pdf - $(BSD_INSTALL_DATA) doc/Raspberry-Pi-APRS-Tracker.pdf $(INSTALLDIR)/share/doc/direwolf/Raspberry-Pi-APRS-Tracker.pdf - $(BSD_INSTALL_DATA) doc/Raspberry-Pi-SDR-IGate.pdf $(INSTALLDIR)/share/doc/direwolf/Raspberry-Pi-SDR-IGate.pdf - $(BSD_INSTALL_DATA) doc/APRStt-Implementation-Notes.pdf $(INSTALLDIR)/share/doc/direwolf/APRStt-Implementation-Notes.pdf - $(BSD_INSTALL_DATA) doc/APRStt-interface-for-SARTrack.pdf $(INSTALLDIR)/share/doc/direwolf/APRStt-interface-for-SARTrack.pdf - $(BSD_INSTALL_DATA) doc/APRS-Telemetry-Toolkit.pdf $(INSTALLDIR)/share/doc/direwolf/APRS-Telemetry-Toolkit.pdf - $(BSD_INSTALL_DATA) doc/A-Better-APRS-Packet-Demodulator-Part-1-1200-baud.pdf $(INSTALLDIR)/share/doc/direwolf/A-Better-APRS-Packet-Demodulator-Part-1-1200-baud.pdf - $(BSD_INSTALL_DATA) doc/A-Better-APRS-Packet-Demodulator-Part-2-9600-baud.pdf $(INSTALLDIR)/share/doc/direwolf/A-Better-APRS-Packet-Demodulator-Part-2-9600-baud.pdf -# -# Various sample config and other files go into examples under the doc directory. -# When building from source, these can be put in home directory with "make install-conf". -# When installed from .DEB or .RPM package, the user will need to copy these to -# the home directory or other desired location. -# - mkdir -p ${INSTALLDIR}/share/doc/direwolf/examples - $(BSD_INSTALL_DATA) direwolf.conf $(INSTALLDIR)/share/doc/direwolf/examples/direwolf.conf - $(BSD_INSTALL_DATA) dw-start.sh $(INSTALLDIR)/share/doc/direwolf/examples/dw-start.sh - $(BSD_INSTALL_DATA) sdr.conf $(INSTALLDIR)/share/doc/direwolf/examples/sdr.conf - $(BSD_INSTALL_DATA) telemetry-toolkit/telem-m0xer-3.txt $(INSTALLDIR)/share/doc/direwolf/examples/telem-m0xer-3.txt - $(BSD_INSTALL_DATA) telemetry-toolkit/telem-balloon.conf $(INSTALLDIR)/share/doc/direwolf/examples/telem-balloon.conf - $(BSD_INSTALL_DATA) telemetry-toolkit/telem-volts.conf $(INSTALLDIR)/share/doc/direwolf/examples/telem-volts.conf -# -# "man" pages -# - $(BSD_INSTALL_MAN) man1/aclients.1 $(INSTALLDIR)/man/man1/aclients.1 - $(BSD_INSTALL_MAN) man1/atest.1 $(INSTALLDIR)/man/man1/atest.1 - $(BSD_INSTALL_MAN) man1/decode_aprs.1 $(INSTALLDIR)/man/man1/decode_aprs.1 - $(BSD_INSTALL_MAN) man1/direwolf.1 $(INSTALLDIR)/man/man1/direwolf.1 - $(BSD_INSTALL_MAN) man1/gen_packets.1 $(INSTALLDIR)/man/man1/gen_packets.1 - $(BSD_INSTALL_MAN) man1/ll2utm.1 $(INSTALLDIR)/man/man1/ll2utm.1 - $(BSD_INSTALL_MAN) man1/log2gpx.1 $(INSTALLDIR)/man/man1/log2gpx.1 - $(BSD_INSTALL_MAN) man1/text2tt.1 $(INSTALLDIR)/man/man1/text2tt.1 - $(BSD_INSTALL_MAN) man1/tt2text.1 $(INSTALLDIR)/man/man1/tt2text.1 - $(BSD_INSTALL_MAN) man1/utm2ll.1 $(INSTALLDIR)/man/man1/utm2ll.1 -# - @echo " " - @echo "If this is your first install, not an upgrade, type this to put a copy" - @echo "of the sample configuration file (direwolf.conf) in your home directory:" - @echo " " - @echo " make install-conf" - @echo " " - - -# These would be done as ordinary user. - -# The Raspberry Pi has ~/Desktop but Ubuntu does not. - -# TODO: Handle Linux variations correctly. - - -.PHONY: install-conf -install-conf : direwolf.conf - cp direwolf.conf ~ - cp sdr.conf ~ - cp telemetry-toolkit/telem-m0xer-3.txt ~ - cp telemetry-toolkit/telem-*.conf ~ -ifneq ($(wildcard $(HOME)/Desktop),) - @echo " " - @echo "This will add a desktop icon on some systems:" - @echo " " - @echo " make install-rpi" - @echo " " -endif - - -.PHONY: install-rpi -install-rpi : dw-start.sh - cp dw-start.sh ~ - ln -f -s /usr/share/applications/direwolf.desktop ~/Desktop/direwolf.desktop - - - -# ---------------------------------- Automated Smoke Test -------------------------------- - - - -# Combine some unit tests into a single regression sanity check. - - -check : dtest ttest tttexttest pftest tlmtest lltest enctest kisstest check-modem1200 check-modem300 check-modem9600 - -# Can we encode and decode at popular data rates? - -check-modem1200 : gen_packets atest - ./gen_packets -n 100 -o /tmp/test1.wav - ./atest -F0 -PE -L70 -G71 /tmp/test1.wav - ./atest -F1 -PE -L73 -G75 /tmp/test1.wav - #rm /tmp/test1.wav - -check-modem300 : gen_packets atest - ./gen_packets -B300 -n 100 -o /tmp/test3.wav - ./atest -B300 -F0 -L68 -G69 /tmp/test3.wav - ./atest -B300 -F1 -L73 -G75 /tmp/test3.wav - rm /tmp/test3.wav - -check-modem9600 : gen_packets atest - ./gen_packets -B9600 -n 100 -o /tmp/test9.wav - ./atest -B9600 -F0 -L57 -G59 /tmp/test9.wav - ./atest -B9600 -F1 -L66 -G67 /tmp/test9.wav - rm /tmp/test9.wav - - - -# Unit test for inner digipeater algorithm - -.PHONY : dtest -dtest : digipeater.c dedupe.c \ - pfilter.o ax25_pad.o fcs_calc.o tq.o textcolor.o \ - decode_aprs.o dwgpsnmea.o dwgps.o dwgpsd.o serial_port.o latlong.o telemetry.o symbols.o tt_text.o - $(CC) $(CFLAGS) -DDIGITEST -o $@ $^ $(LDFLAGS) - ./dtest - rm dtest - - -# Unit test for APRStt tone sequence parsing. - -.PHONY : ttest -ttest : aprs_tt.c tt_text.c latlong.o textcolor.o geotranz.a - $(CC) $(CFLAGS) -DTT_MAIN -o $@ $^ $(LDFLAGS) - ./ttest - rm ttest - - -# Unit test for APRStt tone sequence / text conversions. - -.PHONY: tttexttest -tttexttest : tt_text.c textcolor.o - $(CC) $(CFLAGS) -DTTT_TEST -o $@ $^ $(LDFLAGS) - ./tttexttest - rm tttexttest - - -# Unit test for Packet Filtering. - -.PHONY: pftest -pftest : pfilter.c ax25_pad.o textcolor.o fcs_calc.o decode_aprs.o dwgpsnmea.o dwgps.o dwgpsd.o serial_port.o latlong.o symbols.o telemetry.o tt_text.o - $(CC) $(CFLAGS) -DPFTEST -o $@ $^ $(LDFLAGS) - ./pftest - rm pftest - -# Unit test for telemetry decoding. - -.PHONY: tlmtest -tlmtest : telemetry.c ax25_pad.o fcs_calc.o textcolor.o - $(CC) $(CFLAGS) -DTEST -o $@ $^ $(LDFLAGS) - ./tlmtest - rm tlmtest - -# Unit test for location coordinate conversion. - -.PHONY: lltest -lltest : latlong.c textcolor.o - $(CC) $(CFLAGS) -DLLTEST -o $@ $^ $(LDFLAGS) - ./lltest - rm lltest - -# Unit test for encoding position & object report. - -.PHONY: enctest -enctest : encode_aprs.c latlong.c textcolor.c - $(CC) $(CFLAGS) -DEN_MAIN -o $@ $^ $(LDFLAGS) - ./enctest - rm enctest - - -# Unit test for KISS encapsulation. - -.PHONY: kisstest -kisstest : kiss_frame.c - $(CC) $(CFLAGS) -DKISSTEST -o $@ $^ $(LDFLAGS) - ./kisstest - rm kisstest - - - -# ----------------------------- Manual tests and experiments --------------------------- - -# These are not included in a normal build. Might be broken. - -# Unit test for IGate - -itest : igate.c textcolor.c ax25_pad.c fcs_calc.c textcolor.o - $(CC) $(CFLAGS) -DITEST -o $@ $^ - ./itest - -# Unit test for UDP reception with AFSK demodulator. -# Temporary during development. Might not be useful anymore. - -udptest : udp_test.c demod.o dsp.o demod_afsk.o demod_9600.o hdlc_rec.o hdlc_rec2.o multi_modem.o rrbb.o \ - fcs_calc.o ax25_pad.o decode_aprs.o symbols.o textcolor.o - $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS) - ./udptest - -# For demodulator tweaking experiments. -# Dependencies of demod*.c, rather than .o, are intentional. - -demod.o : tune.h -demod_afsk.o : tune.h -demod_9600.o : tune.h - -testagc : atest.c demod.c dsp.c demod_afsk.c demod_9600.c hdlc_rec.o hdlc_rec2.o multi_modem.o rrbb.o \ - fcs_calc.o ax25_pad.o decode_aprs.o telemetry.o latlong.o symbols.o tune.h textcolor.o - $(CC) $(CFLAGS) -o atest $^ $(LDFLAGS) - ./atest 02_Track_2.wav | grep "packets decoded in" > atest.out - - - - - - -# ------------------------------- Source distribution --------------------------------- - -# probably obsolete and can be removed after move to github. - - - -.PHONY: dist-src -dist-src : README.md CHANGES.md - doc/User-Guide.pdf doc/Raspberry-Pi-APRS.pdf \ - doc/Raspberry-Pi-APRS-Tracker.pdf doc/APRStt-Implementation-Notes.pdf \ - dw-start.sh dwespeak.bat dwespeak.sh \ - tocalls.txt symbols-new.txt symbolsX.txt direwolf.spec - rm -f fsk_fast_filter.h - echo " " > tune.h - rm -f ../$z-src.zip - (cd .. ; zip $z-src.zip \ - $z/README.md \ - $z/CHANGES.md \ - $z/LICENSE* \ - $z/doc/User-Guide.pdf \ - $z/doc/Raspberry-Pi-APRS.pdf \ - $z/doc/Raspberry-Pi-APRS-Tracker.pdf \ - $z/doc/APRStt-Implementation-Notes.pdf \ - $z/doc/APRS-Telemetry-Toolkit.pdf \ - $z/Makefile* \ - $z/*.c $z/*.h \ - $z/regex/* $z/misc/* $z/geotranz/* \ - $z/man1/* \ - $z/generic.conf \ - $z/tocalls.txt $z/symbols-new.txt $z/symbolsX.txt \ - $z/dw-icon.png $z/dw-icon.rc $z/dw-icon.ico \ - $z/dw-start.sh $z/direwolf.spec \ - $z/dwespeak.bat $z/dwespeak.sh \ - $z/telemetry-toolkit/* ) - - -# ----------------------------------------------------------------------------------------- - - -.PHONY: clean -clean : - rm -f $(APPS) fsk_fast_filter.h *.o *.a direwolf.desktop - echo " " > tune.h - - -depend : $(wildcard *.c) - makedepend -f $(lastword $(MAKEFILE_LIST)) -- $(CFLAGS) -- $^ - - -# -# The following is updated by "make depend" -# -# DO NOT DELETE - - diff --git a/comms/direwolf/files/patch-Makefile b/comms/direwolf/files/patch-Makefile deleted file mode 100644 index da7d7d8f1cb2..000000000000 --- a/comms/direwolf/files/patch-Makefile +++ /dev/null @@ -1,17 +0,0 @@ ---- Makefile.orig 2017-01-20 00:11:49 UTC -+++ Makefile -@@ -6,11 +6,14 @@ - - win := $(shell uname | grep CYGWIN) - dar := $(shell uname | grep Darwin) -+free := $(shell uname | grep FreeBSD) - - ifneq ($(win),) - include Makefile.win - else ifeq ($(dar),Darwin) - include Makefile.macosx -+else ifeq ($(free),FreeBSD) -+ include Makefile.FreeBSD - else - include Makefile.linux - endif diff --git a/comms/direwolf/files/patch-Makefile.linux b/comms/direwolf/files/patch-Makefile.linux new file mode 100644 index 000000000000..cff60440c53f --- /dev/null +++ b/comms/direwolf/files/patch-Makefile.linux @@ -0,0 +1,409 @@ +--- Makefile.linux.orig 2018-10-08 14:15:21 UTC ++++ Makefile.linux +@@ -1,5 +1,5 @@ + # +-# Makefile for Linux version of Dire Wolf. ++# Makefile for FreeBSD version of Dire Wolf. + # + + +@@ -13,7 +13,7 @@ all : $(APPS) direwolf.desktop direwolf + @echo " sudo make install" + @echo " " + +-CC := gcc ++#CC := clang + + # Just for fun, let's see how clang compares to gcc. First install like this: + # sudo apt-get update +@@ -32,14 +32,14 @@ CC := gcc + # we will inherit options already set in build environment. + # Explanation - https://github.com/wb2osz/direwolf/pull/38 + +-CFLAGS += -O3 -pthread -Igeotranz -D_XOPEN_SOURCE=600 -D_DEFAULT_SOURCE=1 -Wall ++CFLAGS += -O3 -I${LOCALBASE}/include -pthread -Igeotranz -D_DEFAULT_SOURCE=1 -Wall + + # That was fine for a recent Ubuntu and Raspbian Jessie. + # However, Raspbian wheezy was then missing declaration for strsep and definition of fd_set. + + CFLAGS += -D_BSD_SOURCE + +-LDFLAGS += -lm -lpthread -lrt ++LDFLAGS += -lm -lpthread -lrt -L${LOCALBASE}/lib + + + +@@ -95,7 +95,7 @@ LDFLAGS += -lm -lpthread -lrt + # If the compiler is generating code for the i386 target, we can + # get much better results by telling it we have at least a Pentium 3. + +-arch := $(shell echo | gcc -E -dM - | grep __i386__) ++arch := $(shell echo | ${CC} -E -dM - | grep __i386__) + ifneq ($(arch),) + CFLAGS += -march=pentium3 + endif +@@ -152,7 +152,7 @@ endif + # + + +-useffast := $(shell gcc --help -v 2>/dev/null | grep ffast-math) ++useffast := $(shell ${CC} --help -v 2>/dev/null | grep ffast-math) + ifneq ($(useffast),) + CFLAGS += -ffast-math + endif +@@ -215,7 +215,7 @@ endif + # and the compiler target defaults. + # + +-neon := $(shell cat /proc/cpuinfo | grep neon) ++#neon := $(shell cat /proc/cpuinfo | grep neon) + ifneq ($(neon),) + CFLAGS += -mfpu=neon + endif +@@ -257,7 +257,7 @@ endif + # ALSA (for Linux), comment out (or remove) the line below. + # TODO: Can we automate this somehow? + +-alsa = 1 ++#alsa = 1 + + ifeq ($(wildcard /usr/include/pthread.h),) + $(error /usr/include/pthread.h does not exist. Install it with "sudo apt-get install libc6-dev" or "sudo yum install glibc-headers" ) +@@ -266,8 +266,8 @@ endif + ifneq ($(alsa),) + CFLAGS += -DUSE_ALSA + LDFLAGS += -lasound +-ifeq ($(wildcard /usr/include/alsa/asoundlib.h),) +-$(error /usr/include/alsa/asoundlib.h does not exist. Install it with "sudo apt-get install libasound2-dev" or "sudo yum install alsa-lib-devel" ) ++ifeq ($(wildcard ${LOCALBASE}/include/alsa/asoundlib.h),) ++$(error ${LOCALBASE}/include/alsa/asoundlib.h does not exist. Install it with "sudo apt-get install libasound2-dev" or "sudo yum install alsa-lib-devel" ) + endif + endif + +@@ -276,20 +276,20 @@ endif + # Finding libgps.so* is more difficult because it + # is in different places on different operating systems. + +-enable_gpsd := $(wildcard /usr/include/gps.h) +-ifneq ($(enable_gpsd),) ++#enable_gpsd := $(wildcard ${LOCALBASE}/include/gps.h) ++#ifneq ($(enable_gpsd),) + CFLAGS += -DENABLE_GPSD + LDFLAGS += -lgps +-endif ++#endif + + + # Enable hamlib support if header file is present. + +-enable_hamlib := $(wildcard /usr/include/hamlib/rig.h /usr/local/include/hamlib/rig.h) +-ifneq ($(enable_hamlib),) ++#enable_hamlib := $(wildcard ${LOCALBASE}/include/hamlib/rig.h /usr/local/include/hamlib/rig.h) ++#ifneq ($(enable_hamlib),) + CFLAGS += -DUSE_HAMLIB + LDFLAGS += -lhamlib +-endif ++#endif + + + # Should enabling of this feature be strongly encouraged or +@@ -297,18 +297,18 @@ endif + # If, for some reason, can obtain the libudev-dev package, or + # don't want to install it, comment out the next 3 lines. + +-#ifeq ($(wildcard /usr/include/libudev.h),) +-#$(error /usr/include/libudev.h does not exist. Install it with "sudo apt-get install libudev-dev" or "sudo yum install libudev-devel" ) ++#ifeq ($(wildcard ${LOCALBASE}/include/libudev.h),) ++#$(error ${LOCALBASE}/include/libudev.h does not exist. Install it with "sudo apt-get install libudev-dev" or "sudo yum install libudev-devel" ) + #endif + + + # Enable cm108 PTT support if libudev header file is present. + +-enable_cm108 := $(wildcard /usr/include/libudev.h) +-ifneq ($(enable_cm108),) +-CFLAGS += -DUSE_CM108 +-LDFLAGS += -ludev +-endif ++#enable_cm108 := $(wildcard ${LOCALBASE}/include/libudev.h) ++#ifneq ($(enable_cm108),) ++#CFLAGS += -DUSE_CM108 ++#LDFLAGS += -ludev ++#endif + + + # Name of current directory. +@@ -333,20 +333,20 @@ direwolf : direwolf.o config.o recv.o de + misc.a geotranz.a + $(CC) -o $@ $^ $(LDFLAGS) + @echo " " +-ifneq ($(enable_gpsd),) +- @echo "\t>\tThis includes support for gpsd." +-else +- @echo "\t>\tThis does NOT include support for gpsd." +-endif +-ifneq ($(enable_hamlib),) +- @echo "\t>\tThis includes support for hamlib." +-else +- @echo "\t>\tThis does NOT include support for hamlib." +-endif ++#ifneq ($(enable_gpsd),) ++ @echo " > This includes support for gpsd." ++#else ++# @echo "\t>\tThis does NOT include support for gpsd." ++#endif ++#ifneq ($(enable_hamlib),) ++ @echo " > This includes support for hamlib." ++#else ++# @echo "\t>\tThis does NOT include support for hamlib." ++#endif + ifneq ($(enable_cm108),) +- @echo "\t>\tThis includes support for CM108/CM119 PTT." ++ @echo " > This includes support for CM108/CM119 PTT." + else +- @echo "\t>\tThis does NOT include support for CM108/CM119 PTT." ++ @echo " > This does NOT include support for CM108/CM119 PTT." + endif + @echo " " + +@@ -535,12 +535,17 @@ direwolf.conf : generic.conf + # Something built from source and installed locally would normally go in /usr/local/... + # If not specified on the make command line, this is our default. + +-DESTDIR ?= /usr/local ++INSTALLDIR ?= ${PREFIX} ++SHAREDIR ?= ${INSTALLDIR}/share ++DATADIR ?= ${SHAREDIR}/direwolf ++DOCSDIR ?= ${SHAREDIR}/doc/direwolf ++EXAMPLESDIR ?= ${SHAREDIR}/examples/direwolf ++MANDIR ?= ${INSTALLDIR}/man + + # However, if you are preparing a "binary" DEB or RPM package, the installation location + # would normally be /usr/... instead. In this case, use a command line like this: + # +-# make DESTDIR=/usr install ++# make INSTALLDIR=/usr install + + + +@@ -560,22 +565,22 @@ direwolf.desktop : + @echo '[Desktop Entry]' > $@ + @echo 'Type=Application' >> $@ + ifneq ($(wildcard /usr/bin/lxterminal),) +- @echo "Exec=lxterminal -t \"Dire Wolf\" -e \"$(DESTDIR)/bin/direwolf\"" >> $@ ++ @echo "Exec=lxterminal -t \"Dire Wolf\" -e \"$(INSTALLDIR)/bin/direwolf\"" >> $@ + else ifneq ($(wildcard /usr/bin/lxterm),) +- @echo "Exec=lxterm -hold -title \"Dire Wolf\" -bg white -e \"$(DESTDIR)/bin/direwolf\"" >> $@ ++ @echo "Exec=lxterm -hold -title \"Dire Wolf\" -bg white -e \"$(INSTALLDIR)/bin/direwolf\"" >> $@ + else +- @echo "Exec=xterm -hold -title \"Dire Wolf\" -bg white -e \"$(DESTDIR)/bin/direwolf\"" >> $@ ++ @echo "Exec=xterm -hold -title \"Dire Wolf\" -bg white -e \"$(INSTALLDIR)/bin/direwolf\"" >> $@ + endif + @echo 'Name=Dire Wolf' >> $@ + @echo 'Comment=APRS Soundcard TNC' >> $@ +- @echo 'Icon=$(DESTDIR)/share/direwolf/pixmaps/dw-icon.png' >> $@ +- @echo "Path=$(HOME)" >> $@ ++ @echo 'Icon=$(DATADIR)/pixmaps/dw-icon.png' >> $@ ++# @echo "Path=$(HOME)" >> $@ + @echo '#Terminal=true' >> $@ + @echo 'Categories=HamRadio' >> $@ + @echo 'Keywords=Ham Radio;APRS;Soundcard TNC;KISS;AGWPE;AX.25' >> $@ + + +-# Installation into $(DESTDIR), usually /usr/local/... or /usr/... ++# Installation into $(DESTDIR)$(INSTALLDIR), usually /usr/local/... or /usr/... + # Needs to be run as root or with sudo. + + +@@ -585,102 +590,107 @@ install : $(APPS) direwolf.conf tocalls. + # Applications, not installed with package manager, normally go in /usr/local/bin. + # /usr/bin is used instead when installing from .DEB or .RPM package. + # +- $(INSTALL) -D --mode=755 direwolf $(DESTDIR)/bin/direwolf +- $(INSTALL) -D --mode=755 decode_aprs $(DESTDIR)/bin/decode_aprs +- $(INSTALL) -D --mode=755 text2tt $(DESTDIR)/bin/text2tt +- $(INSTALL) -D --mode=755 tt2text $(DESTDIR)/bin/tt2text +- $(INSTALL) -D --mode=755 ll2utm $(DESTDIR)/bin/ll2utm +- $(INSTALL) -D --mode=755 utm2ll $(DESTDIR)/bin/utm2ll +- $(INSTALL) -D --mode=755 aclients $(DESTDIR)/bin/aclients +- $(INSTALL) -D --mode=755 log2gpx $(DESTDIR)/bin/log2gpx +- $(INSTALL) -D --mode=755 gen_packets $(DESTDIR)/bin/gen_packets +- $(INSTALL) -D --mode=755 atest $(DESTDIR)/bin/atest +- $(INSTALL) -D --mode=755 ttcalc $(DESTDIR)/bin/ttcalc +- $(INSTALL) -D --mode=755 kissutil $(DESTDIR)/bin/kissutil +- $(INSTALL) -D --mode=755 cm108 $(DESTDIR)/bin/cm108 +- $(INSTALL) -D --mode=755 dwespeak.sh $(DESTDIR)/bin/dwspeak.sh ++ $(BSD_INSTALL_PROGRAM) direwolf $(DESTDIR)$(INSTALLDIR)/bin/direwolf ++ $(BSD_INSTALL_PROGRAM) decode_aprs $(DESTDIR)$(INSTALLDIR)/bin/decode_aprs ++ $(BSD_INSTALL_PROGRAM) text2tt $(DESTDIR)$(INSTALLDIR)/bin/text2tt ++ $(BSD_INSTALL_PROGRAM) tt2text $(DESTDIR)$(INSTALLDIR)/bin/tt2text ++ $(BSD_INSTALL_PROGRAM) ll2utm $(DESTDIR)$(INSTALLDIR)/bin/ll2utm ++ $(BSD_INSTALL_PROGRAM) utm2ll $(DESTDIR)$(INSTALLDIR)/bin/utm2ll ++ $(BSD_INSTALL_PROGRAM) aclients $(DESTDIR)$(INSTALLDIR)/bin/aclients ++ $(BSD_INSTALL_PROGRAM) log2gpx $(DESTDIR)$(INSTALLDIR)/bin/log2gpx ++ $(BSD_INSTALL_PROGRAM) gen_packets $(DESTDIR)$(INSTALLDIR)/bin/gen_packets ++ $(BSD_INSTALL_PROGRAM) atest $(DESTDIR)$(INSTALLDIR)/bin/atest ++ $(BSD_INSTALL_PROGRAM) ttcalc $(DESTDIR)$(INSTALLDIR)/bin/ttcalc ++ $(BSD_INSTALL_PROGRAM) kissutil $(DESTDIR)$(INSTALLDIR)/bin/kissutil ++ $(BSD_INSTALL_PROGRAM) cm108 $(DESTDIR)$(INSTALLDIR)/bin/cm108 ++ $(BSD_INSTALL_SCRIPT) dwespeak.sh $(DESTDIR)$(INSTALLDIR)/bin/dwspeak.sh + # + # Telemetry Toolkit executables. Other .conf and .txt files will go into doc directory. + # +- $(INSTALL) -D --mode=755 telemetry-toolkit/telem-balloon.pl $(DESTDIR)/bin/telem-balloon.pl +- $(INSTALL) -D --mode=755 telemetry-toolkit/telem-bits.pl $(DESTDIR)/bin/telem-bits.pl +- $(INSTALL) -D --mode=755 telemetry-toolkit/telem-data.pl $(DESTDIR)/bin/telem-data.pl +- $(INSTALL) -D --mode=755 telemetry-toolkit/telem-data91.pl $(DESTDIR)/bin/telem-data91.pl +- $(INSTALL) -D --mode=755 telemetry-toolkit/telem-eqns.pl $(DESTDIR)/bin/telem-eqns.pl +- $(INSTALL) -D --mode=755 telemetry-toolkit/telem-parm.pl $(DESTDIR)/bin/telem-parm.pl +- $(INSTALL) -D --mode=755 telemetry-toolkit/telem-seq.sh $(DESTDIR)/bin/telem-seq.sh +- $(INSTALL) -D --mode=755 telemetry-toolkit/telem-unit.pl $(DESTDIR)/bin/telem-unit.pl +- $(INSTALL) -D --mode=755 telemetry-toolkit/telem-volts.py $(DESTDIR)/bin/telem-volts.py ++ $(BSD_INSTALL_SCRIPT) telemetry-toolkit/telem-balloon.pl $(DESTDIR)$(INSTALLDIR)/bin/telem-balloon.pl ++ $(BSD_INSTALL_SCRIPT) telemetry-toolkit/telem-bits.pl $(DESTDIR)$(INSTALLDIR)/bin/telem-bits.pl ++ $(BSD_INSTALL_SCRIPT) telemetry-toolkit/telem-data.pl $(DESTDIR)$(INSTALLDIR)/bin/telem-data.pl ++ $(BSD_INSTALL_SCRIPT) telemetry-toolkit/telem-data91.pl $(DESTDIR)$(INSTALLDIR)/bin/telem-data91.pl ++ $(BSD_INSTALL_SCRIPT) telemetry-toolkit/telem-eqns.pl $(DESTDIR)$(INSTALLDIR)/bin/telem-eqns.pl ++ $(BSD_INSTALL_SCRIPT) telemetry-toolkit/telem-parm.pl $(DESTDIR)$(INSTALLDIR)/bin/telem-parm.pl ++ $(BSD_INSTALL_SCRIPT) telemetry-toolkit/telem-seq.sh $(DESTDIR)$(INSTALLDIR)/bin/telem-seq.sh ++ $(BSD_INSTALL_SCRIPT) telemetry-toolkit/telem-unit.pl $(DESTDIR)$(INSTALLDIR)/bin/telem-unit.pl ++ $(BSD_INSTALL_SCRIPT) telemetry-toolkit/telem-volts.py $(DESTDIR)$(INSTALLDIR)/bin/telem-volts.py + # + # Misc. data such as "tocall" to system mapping. + # +- $(INSTALL) -D --mode=644 tocalls.txt $(DESTDIR)/share/direwolf/tocalls.txt +- $(INSTALL) -D --mode=644 symbols-new.txt $(DESTDIR)/share/direwolf/symbols-new.txt +- $(INSTALL) -D --mode=644 symbolsX.txt $(DESTDIR)/share/direwolf/symbolsX.txt ++ mkdir -p $(DESTDIR)${DATADIR} ++ $(BSD_INSTALL_DATA) tocalls.txt $(DESTDIR)$(DATADIR)/tocalls.txt ++ $(BSD_INSTALL_DATA) symbols-new.txt $(DESTDIR)$(DATADIR)/symbols-new.txt ++ $(BSD_INSTALL_DATA) symbolsX.txt $(DESTDIR)$(DATADIR)/symbolsX.txt + # + # For desktop icon. + # +- $(INSTALL) -D --mode=644 dw-icon.png $(DESTDIR)/share/direwolf/pixmaps/dw-icon.png +- $(INSTALL) -D --mode=644 direwolf.desktop $(DESTDIR)/share/applications/direwolf.desktop ++ mkdir -p $(DESTDIR)${DATADIR}/pixmaps ++ mkdir -p $(DESTDIR)${SHAREDIR}/applications ++ $(BSD_INSTALL_DATA) dw-icon.png $(DESTDIR)$(DATADIR)/pixmaps/dw-icon.png ++ $(BSD_INSTALL_DATA) direwolf.desktop $(DESTDIR)$(SHAREDIR)/applications/direwolf.desktop + # + # Documentation. Various plain text files and PDF. + # +- $(INSTALL) -D --mode=644 CHANGES.md $(DESTDIR)/share/doc/direwolf/CHANGES.md +- $(INSTALL) -D --mode=644 LICENSE-dire-wolf.txt $(DESTDIR)/share/doc/direwolf/LICENSE-dire-wolf.txt +- $(INSTALL) -D --mode=644 LICENSE-other.txt $(DESTDIR)/share/doc/direwolf/LICENSE-other.txt ++ $(BSD_INSTALL_DATA) CHANGES.md $(DESTDIR)$(DATADIR)/CHANGES.md ++ $(BSD_INSTALL_DATA) LICENSE-dire-wolf.txt $(DESTDIR)$(DATADIR)/LICENSE-dire-wolf.txt ++ $(BSD_INSTALL_DATA) LICENSE-other.txt $(DESTDIR)$(DATADIR)/LICENSE-other.txt + # + # ./README.md is an overview for the project main page. + # Maybe we could stick it in some other place. + # doc/README.md contains an overview of the PDF file contents and is more useful here. + # +- $(INSTALL) -D --mode=644 doc/README.md $(DESTDIR)/share/doc/direwolf/README.md +- $(INSTALL) -D --mode=644 doc/2400-4800-PSK-for-APRS-Packet-Radio.pdf $(DESTDIR)/share/doc/direwolf/2400-4800-PSK-for-APRS-Packet-Radio.pdf +- $(INSTALL) -D --mode=644 doc/A-Better-APRS-Packet-Demodulator-Part-1-1200-baud.pdf $(DESTDIR)/share/doc/direwolf/A-Better-APRS-Packet-Demodulator-Part-1-1200-baud.pdf +- $(INSTALL) -D --mode=644 doc/A-Better-APRS-Packet-Demodulator-Part-2-9600-baud.pdf $(DESTDIR)/share/doc/direwolf/A-Better-APRS-Packet-Demodulator-Part-2-9600-baud.pdf +- $(INSTALL) -D --mode=644 doc/A-Closer-Look-at-the-WA8LMF-TNC-Test-CD.pdf $(DESTDIR)/share/doc/direwolf/A-Closer-Look-at-the-WA8LMF-TNC-Test-CD.pdf +- $(INSTALL) -D --mode=644 doc/APRS-Telemetry-Toolkit.pdf $(DESTDIR)/share/doc/direwolf/APRS-Telemetry-Toolkit.pdf +- $(INSTALL) -D --mode=644 doc/APRStt-Implementation-Notes.pdf $(DESTDIR)/share/doc/direwolf/APRStt-Implementation-Notes.pdf +- $(INSTALL) -D --mode=644 doc/APRStt-interface-for-SARTrack.pdf $(DESTDIR)/share/doc/direwolf/APRStt-interface-for-SARTrack.pdf +- $(INSTALL) -D --mode=644 doc/APRStt-Listening-Example.pdf $(DESTDIR)/share/doc/direwolf/APRStt-Listening-Example.pdf +- $(INSTALL) -D --mode=644 doc/Bluetooth-KISS-TNC.pdf $(DESTDIR)/share/doc/direwolf/Bluetooth-KISS-TNC.pdf +- $(INSTALL) -D --mode=644 doc/Going-beyond-9600-baud.pdf $(DESTDIR)/share/doc/direwolf/Going-beyond-9600-baud.pdf +- $(INSTALL) -D --mode=644 doc/Raspberry-Pi-APRS.pdf $(DESTDIR)/share/doc/direwolf/Raspberry-Pi-APRS.pdf +- $(INSTALL) -D --mode=644 doc/Raspberry-Pi-APRS-Tracker.pdf $(DESTDIR)/share/doc/direwolf/Raspberry-Pi-APRS-Tracker.pdf +- $(INSTALL) -D --mode=644 doc/Raspberry-Pi-SDR-IGate.pdf $(DESTDIR)/share/doc/direwolf/Raspberry-Pi-SDR-IGate.pdf +- $(INSTALL) -D --mode=644 doc/Successful-APRS-IGate-Operation.pdf $(DESTDIR)/share/doc/direwolf/Successful-APRS-IGate-Operation.pdf +- $(INSTALL) -D --mode=644 doc/User-Guide.pdf $(DESTDIR)/share/doc/direwolf/User-Guide.pdf +- $(INSTALL) -D --mode=644 doc/WA8LMF-TNC-Test-CD-Results.pdf $(DESTDIR)/share/doc/direwolf/WA8LMF-TNC-Test-CD-Results.pdf ++ mkdir -p $(DESTDIR)${DOCSDIR} ++ $(BSD_INSTALL_DATA) doc/README.md $(DESTDIR)$(DOCSDIR)/README.md ++ $(BSD_INSTALL_DATA) doc/2400-4800-PSK-for-APRS-Packet-Radio.pdf $(DESTDIR)$(DOCSDIR)/2400-4800-PSK-for-APRS-Packet-Radio.pdf ++ $(BSD_INSTALL_DATA) doc/A-Better-APRS-Packet-Demodulator-Part-1-1200-baud.pdf $(DESTDIR)$(DOCSDIR)/A-Better-APRS-Packet-Demodulator-Part-1-1200-baud.pdf ++ $(BSD_INSTALL_DATA) doc/A-Better-APRS-Packet-Demodulator-Part-2-9600-baud.pdf $(DESTDIR)$(DOCSDIR)/A-Better-APRS-Packet-Demodulator-Part-2-9600-baud.pdf ++ $(BSD_INSTALL_DATA) doc/A-Closer-Look-at-the-WA8LMF-TNC-Test-CD.pdf $(DESTDIR)$(DOCSDIR)/A-Closer-Look-at-the-WA8LMF-TNC-Test-CD.pdf ++ $(BSD_INSTALL_DATA) doc/APRS-Telemetry-Toolkit.pdf $(DESTDIR)$(DOCSDIR)/APRS-Telemetry-Toolkit.pdf ++ $(BSD_INSTALL_DATA) doc/APRStt-Implementation-Notes.pdf $(DESTDIR)$(DOCSDIR)/APRStt-Implementation-Notes.pdf ++ $(BSD_INSTALL_DATA) doc/APRStt-interface-for-SARTrack.pdf $(DESTDIR)$(DOCSDIR)/APRStt-interface-for-SARTrack.pdf ++ $(BSD_INSTALL_DATA) doc/APRStt-Listening-Example.pdf $(DESTDIR)$(DOCSDIR)/APRStt-Listening-Example.pdf ++ $(BSD_INSTALL_DATA) doc/Bluetooth-KISS-TNC.pdf $(DESTDIR)$(DOCSDIR)/Bluetooth-KISS-TNC.pdf ++ $(BSD_INSTALL_DATA) doc/Going-beyond-9600-baud.pdf $(DESTDIR)$(DOCSDIR)/Going-beyond-9600-baud.pdf ++ $(BSD_INSTALL_DATA) doc/Raspberry-Pi-APRS.pdf $(DESTDIR)$(DOCSDIR)/Raspberry-Pi-APRS.pdf ++ $(BSD_INSTALL_DATA) doc/Raspberry-Pi-APRS-Tracker.pdf $(DESTDIR)$(DOCSDIR)/Raspberry-Pi-APRS-Tracker.pdf ++ $(BSD_INSTALL_DATA) doc/Raspberry-Pi-SDR-IGate.pdf $(DESTDIR)$(DOCSDIR)/Raspberry-Pi-SDR-IGate.pdf ++ $(BSD_INSTALL_DATA) doc/Successful-APRS-IGate-Operation.pdf $(DESTDIR)$(DOCSDIR)/Successful-APRS-IGate-Operation.pdf ++ $(BSD_INSTALL_DATA) doc/User-Guide.pdf $(DESTDIR)$(DOCSDIR)/User-Guide.pdf ++ $(BSD_INSTALL_DATA) doc/WA8LMF-TNC-Test-CD-Results.pdf $(DESTDIR)$(DOCSDIR)/WA8LMF-TNC-Test-CD-Results.pdf + # + # Various sample config and other files go into examples under the doc directory. + # When building from source, these can be put in home directory with "make install-conf". + # When installed from .DEB or .RPM package, the user will need to copy these to + # the home directory or other desired location. + # +- $(INSTALL) -D --mode=644 direwolf.conf $(DESTDIR)/share/doc/direwolf/examples/direwolf.conf +- $(INSTALL) -D --mode=755 dw-start.sh $(DESTDIR)/share/doc/direwolf/examples/dw-start.sh +- $(INSTALL) -D --mode=644 sdr.conf $(DESTDIR)/share/doc/direwolf/examples/sdr.conf +- $(INSTALL) -D --mode=644 telemetry-toolkit/telem-m0xer-3.txt $(DESTDIR)/share/doc/direwolf/examples/telem-m0xer-3.txt +- $(INSTALL) -D --mode=644 telemetry-toolkit/telem-balloon.conf $(DESTDIR)/share/doc/direwolf/examples/telem-balloon.conf +- $(INSTALL) -D --mode=644 telemetry-toolkit/telem-volts.conf $(DESTDIR)/share/doc/direwolf/examples/telem-volts.conf ++ mkdir -p $(DESTDIR)${EXAMPLESDIR} ++ $(BSD_INSTALL_DATA) direwolf.conf $(DESTDIR)$(EXAMPLESDIR)/direwolf.conf ++ $(BSD_INSTALL_SCRIPT) dw-start.sh $(DESTDIR)$(EXAMPLESDIR)/dw-start.sh ++ $(BSD_INSTALL_DATA) sdr.conf $(DESTDIR)$(EXAMPLESDIR)/sdr.conf ++ $(BSD_INSTALL_DATA) telemetry-toolkit/telem-m0xer-3.txt $(DESTDIR)$(EXAMPLESDIR)/telem-m0xer-3.txt ++ $(BSD_INSTALL_DATA) telemetry-toolkit/telem-balloon.conf $(DESTDIR)$(EXAMPLESDIR)/telem-balloon.conf ++ $(BSD_INSTALL_DATA) telemetry-toolkit/telem-volts.conf $(DESTDIR)$(EXAMPLESDIR)/telem-volts.conf + # + # "man" pages + # +- $(INSTALL) -D --mode=644 man1/aclients.1 $(DESTDIR)/share/man/man1/aclients.1 +- $(INSTALL) -D --mode=644 man1/atest.1 $(DESTDIR)/share/man/man1/atest.1 +- $(INSTALL) -D --mode=644 man1/decode_aprs.1 $(DESTDIR)/share/man/man1/decode_aprs.1 +- $(INSTALL) -D --mode=644 man1/direwolf.1 $(DESTDIR)/share/man/man1/direwolf.1 +- $(INSTALL) -D --mode=644 man1/gen_packets.1 $(DESTDIR)/share/man/man1/gen_packets.1 +- $(INSTALL) -D --mode=644 man1/kissutil.1 $(DESTDIR)/share/man/man1/kissutil.1 +- $(INSTALL) -D --mode=644 man1/ll2utm.1 $(DESTDIR)/share/man/man1/ll2utm.1 +- $(INSTALL) -D --mode=644 man1/log2gpx.1 $(DESTDIR)/share/man/man1/log2gpx.1 +- $(INSTALL) -D --mode=644 man1/text2tt.1 $(DESTDIR)/share/man/man1/text2tt.1 +- $(INSTALL) -D --mode=644 man1/tt2text.1 $(DESTDIR)/share/man/man1/tt2text.1 +- $(INSTALL) -D --mode=644 man1/utm2ll.1 $(DESTDIR)/share/man/man1/utm2ll.1 ++ $(BSD_INSTALL_MAN) man1/aclients.1 $(DESTDIR)$(MANDIR)/man1/aclients.1 ++ $(BSD_INSTALL_MAN) man1/atest.1 $(DESTDIR)$(MANDIR)/man1/atest.1 ++ $(BSD_INSTALL_MAN) man1/decode_aprs.1 $(DESTDIR)$(MANDIR)/man1/decode_aprs.1 ++ $(BSD_INSTALL_MAN) man1/direwolf.1 $(DESTDIR)$(MANDIR)/man1/direwolf.1 ++ $(BSD_INSTALL_MAN) man1/gen_packets.1 $(DESTDIR)$(MANDIR)/man1/gen_packets.1 ++ $(BSD_INSTALL_MAN) man1/kissutil.1 $(DESTDIR)$(MANDIR)/man1/kissutil.1 ++ $(BSD_INSTALL_MAN) man1/ll2utm.1 $(DESTDIR)$(MANDIR)/man1/ll2utm.1 ++ $(BSD_INSTALL_MAN) man1/log2gpx.1 $(DESTDIR)$(MANDIR)//man1/log2gpx.1 ++ $(BSD_INSTALL_MAN) man1/text2tt.1 $(DESTDIR)$(MANDIR)/man1/text2tt.1 ++ $(BSD_INSTALL_MAN) man1/tt2text.1 $(DESTDIR)$(MANDIR)/man1/tt2text.1 ++ $(BSD_INSTALL_MAN) man1/utm2ll.1 $(DESTDIR)$(MANDIR)/man1/utm2ll.1 + # + # Set group and mode of HID devices corresponding to C-Media USB Audio adapters. + # This will allow us to use the CM108/CM119 GPIO pins for PTT. + # +- $(INSTALL) -D --mode=644 99-direwolf-cmedia.rules /etc/udev/rules.d/99-direwolf-cmedia.rules ++# $(BSD_INSTALL_DATA) 99-direwolf-cmedia.rules /etc/udev/rules.d/99-direwolf-cmedia.rules + # + @echo " " + @echo "If this is your first install, not an upgrade, type this to put a copy" +@@ -693,7 +703,7 @@ install : $(APPS) direwolf.conf tocalls. + # Put sample configuration & startup files in home directory. + # This step would be done as ordinary user. + # Some people like to put the direwolf config file in /etc/ax25. +-# Note that all of these are also in $(DESTDIR)/share/doc/direwolf/examples/. ++# Note that all of these are also in $(DESTDIR)$(INSTALLDIR)/share/doc/direwolf/examples/. + + # The Raspberry Pi has ~/Desktop but Ubuntu does not. + +@@ -724,7 +734,7 @@ endif + + .PHONY: install-rpi + install-rpi : +- ln -f -s $(DESTDIR)/share/applications/direwolf.desktop ~/Desktop/direwolf.desktop ++ ln -f -s $(DESTDIR)$(SHAREDIR)/applications/direwolf.desktop ~/Desktop/direwolf.desktop + + + diff --git a/comms/direwolf/files/patch-dw-start.sh b/comms/direwolf/files/patch-dw-start.sh index 26d8a390a3d5..01939bab8a99 100644 --- a/comms/direwolf/files/patch-dw-start.sh +++ b/comms/direwolf/files/patch-dw-start.sh @@ -1,24 +1,35 @@ ---- dw-start.sh.orig 2017-01-20 00:11:50 UTC +--- dw-start.sh.orig 2018-10-08 14:15:21 UTC +++ dw-start.sh -@@ -83,15 +83,15 @@ DWCMD="direwolf -a 100" - # +@@ -120,14 +120,14 @@ function GUI { + # Auto adjust the startup for your particular environment: gnome-terminal, xterm, etc. + # + +- if [ -x /usr/bin/lxterminal ]; then +- /usr/bin/lxterminal -t "Dire Wolf" -e "$DWCMD" & ++ if [ -x %%PREFIX%%/bin/lxterminal ]; then ++ %%PREFIX%%/bin/lxterminal -t "Dire Wolf" -e "$DWCMD" & + SUCCESS=1 +- elif [ -x /usr/bin/xterm ]; then +- /usr/bin/xterm -bg white -fg black -e "$DWCMD" & ++ elif [ -x %%PREFIX%%/bin/xterm ]; then ++ %%PREFIX%%/bin/xterm -bg white -fg black -e "$DWCMD" & + SUCCESS=1 +- elif [ -x /usr/bin/x-terminal-emulator ]; then +- /usr/bin/x-terminal-emulator -e "$DWCMD" & ++ elif [ -x %%PREFIX%%/bin/x-terminal-emulator ]; then ++ %%PREFIX%%/bin/x-terminal-emulator -e "$DWCMD" & + SUCCESS=1 + else + echo "Did not find an X terminal emulator. Reverting to CLI mode" +@@ -142,9 +142,9 @@ function GUI { + # ----------------------------------------------------------- + # When running from cron, we have a very minimal environment +-# including PATH=/usr/bin:/bin. ++# including PATH=%%PREFIX%%/bin:/bin. + # +-export PATH=/usr/local/bin:$PATH ++export PATH=%%PREFIX%%/bin:$PATH --if [ -x /usr/bin/lxterminal ] -+if [ -x %%PREFIX%%/bin/lxterminal ] - then -- /usr/bin/lxterminal -t "Dire Wolf" -e "$DWCMD" & --elif [ -x /usr/bin/xterm ] -+ %%PREFIX%%/bin/lxterminal -t "Dire Wolf" -e "$DWCMD" & -+elif [ -x %%PREFIX%%/bin/xterm ] - then -- /usr/bin/xterm -bg white -fg black -e "$DWCMD" & --elif [ -x /usr/bin/x-terminal-emulator ] -+ %%PREFIX%%/bin/xterm -bg white -fg black -e "$DWCMD" & -+elif [ -x %%PREFIX%%/bin/x-terminal-emulator ] - then -- /usr/bin/x-terminal-emulator -e "$DWCMD" & -+ %%PREFIX%%/bin/x-terminal-emulator -e "$DWCMD" & - else - echo "Did not find an X terminal emulator." - fi + #Log the start of the script run and re-run + date >> $LOGFILE diff --git a/comms/direwolf/files/patch-dwgpsd.c b/comms/direwolf/files/patch-dwgpsd.c deleted file mode 100644 index 7ae8c67b4615..000000000000 --- a/comms/direwolf/files/patch-dwgpsd.c +++ /dev/null @@ -1,13 +0,0 @@ ---- dwgpsd.c.orig 2017-01-20 00:11:50 UTC -+++ dwgpsd.c -@@ -77,8 +77,9 @@ static void * read_gpsd_thread (void *ar - * Information for interface to gpsd daemon. - */ - -+#if ENABLE_GPSD - static struct gps_data_t gpsdata; -- -+#endif - - /*------------------------------------------------------------------- - * diff --git a/comms/direwolf/files/patch-ptt.c b/comms/direwolf/files/patch-ptt.c new file mode 100644 index 000000000000..a636932ca03f --- /dev/null +++ b/comms/direwolf/files/patch-ptt.c @@ -0,0 +1,11 @@ +--- ptt.c.orig 2018-10-08 14:15:21 UTC ++++ ptt.c +@@ -139,7 +139,7 @@ + + #if __WIN32__ + #else +-#include <sys/termios.h> ++#include <termios.h> + #include <sys/ioctl.h> + #include <fcntl.h> + #include <sys/types.h> diff --git a/comms/direwolf/pkg-plist b/comms/direwolf/pkg-plist index 89e325b6501d..357fd157a917 100644 --- a/comms/direwolf/pkg-plist +++ b/comms/direwolf/pkg-plist @@ -1,9 +1,11 @@ bin/aclients bin/atest +bin/cm108 bin/decode_aprs bin/direwolf -bin/dwespeak.sh +bin/dwspeak.sh bin/gen_packets +bin/kissutil bin/ll2utm bin/log2gpx bin/telem-balloon.pl @@ -24,31 +26,40 @@ man/man1/atest.1.gz man/man1/decode_aprs.1.gz man/man1/direwolf.1.gz man/man1/gen_packets.1.gz +man/man1/kissutil.1.gz man/man1/ll2utm.1.gz man/man1/log2gpx.1.gz man/man1/text2tt.1.gz man/man1/tt2text.1.gz man/man1/utm2ll.1.gz share/applications/direwolf.desktop -%%DATADIR%%/dw-icon.png +%%DATADIR%%/CHANGES.md +%%DATADIR%%/LICENSE-dire-wolf.txt +%%DATADIR%%/LICENSE-other.txt %%DATADIR%%/symbols-new.txt %%DATADIR%%/symbolsX.txt %%DATADIR%%/tocalls.txt +%%DATADIR%%/pixmaps/dw-icon.png +%%PORTDOCS%%%%DOCSDIR%%/2400-4800-PSK-for-APRS-Packet-Radio.pdf %%PORTDOCS%%%%DOCSDIR%%/A-Better-APRS-Packet-Demodulator-Part-1-1200-baud.pdf %%PORTDOCS%%%%DOCSDIR%%/A-Better-APRS-Packet-Demodulator-Part-2-9600-baud.pdf +%%PORTDOCS%%%%DOCSDIR%%/A-Closer-Look-at-the-WA8LMF-TNC-Test-CD.pdf %%PORTDOCS%%%%DOCSDIR%%/APRS-Telemetry-Toolkit.pdf %%PORTDOCS%%%%DOCSDIR%%/APRStt-Implementation-Notes.pdf +%%PORTDOCS%%%%DOCSDIR%%/APRStt-Listening-Example.pdf %%PORTDOCS%%%%DOCSDIR%%/APRStt-interface-for-SARTrack.pdf -%%PORTDOCS%%%%DOCSDIR%%/LICENSE-dire-wolf.txt -%%PORTDOCS%%%%DOCSDIR%%/LICENSE-other.txt +%%PORTDOCS%%%%DOCSDIR%%/Bluetooth-KISS-TNC.pdf +%%PORTDOCS%%%%DOCSDIR%%/Going-beyond-9600-baud.pdf %%PORTDOCS%%%%DOCSDIR%%/README.md %%PORTDOCS%%%%DOCSDIR%%/Raspberry-Pi-APRS-Tracker.pdf %%PORTDOCS%%%%DOCSDIR%%/Raspberry-Pi-APRS.pdf %%PORTDOCS%%%%DOCSDIR%%/Raspberry-Pi-SDR-IGate.pdf +%%PORTDOCS%%%%DOCSDIR%%/Successful-APRS-IGate-Operation.pdf %%PORTDOCS%%%%DOCSDIR%%/User-Guide.pdf -%%PORTDOCS%%%%DOCSDIR%%/examples/direwolf.conf -%%PORTDOCS%%%%DOCSDIR%%/examples/dw-start.sh -%%PORTDOCS%%%%DOCSDIR%%/examples/sdr.conf -%%PORTDOCS%%%%DOCSDIR%%/examples/telem-balloon.conf -%%PORTDOCS%%%%DOCSDIR%%/examples/telem-m0xer-3.txt -%%PORTDOCS%%%%DOCSDIR%%/examples/telem-volts.conf +%%PORTDOCS%%%%DOCSDIR%%/WA8LMF-TNC-Test-CD-Results.pdf +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/direwolf.conf +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/dw-start.sh +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/sdr.conf +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/telem-balloon.conf +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/telem-m0xer-3.txt +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/telem-volts.conf |