This repository has been archived by the owner on Jun 30, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 9
/
Makefile.osx
125 lines (98 loc) · 3.92 KB
/
Makefile.osx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# $Id: Makefile.osx,v 1.58 2018/12/05 07:09:24 karn Exp $
CFLAGS=-g -O3 -std=gnu11 -pthread -Wall -funsafe-math-optimizations `pkg-config --cflags fftw3`
BINDIR=/usr/local/bin
LIBDIR=/usr/local/share/ka9q-radio
LD_FLAGS=-lpthread -lm
EXECS=aprs aprsfeed funcube hackrf iqplay iqrecord modulate monitor opus opussend packet pcmsend pcmcat radio control
AFILES=bandplan.txt help.txt modes.txt
all: $(EXECS) $(AFILES)
install: all
install -d $(LIBDIR)
install -d $(BINDIR)
install -o root -m 04755 $(EXECS) $(BINDIR)
install $(AFILES) $(LIBDIR)
clean:
rm -f *.o *.a $(EXECS)
rcsclean
# Executables
control: control.o modes.o misc.o multicast.o bandplan.o status.o
$(CC) -g -o $@ $^ -lncurses -lm -lpthread -lm
aprs: aprs.o ax25.o libradio.a
$(CC) -g -o $@ $^ -lm
aprsfeed: aprsfeed.o libradio.a
$(CC) -g -o $@ $^ -lm -lpthread
funcube: funcube.o libradio.a libfcd.a
$(CC) -g -o $@ $^ -lportaudio -lusb-1.0 -liconv -lm -lpthread
hackrf: hackrf.o libradio.a
$(CC) -g -o $@ $^ -lhackrf -lm -lpthread
iqplay: iqplay.o libradio.a
$(CC) -g -o $@ $^ -lm -lpthread
iqrecord: iqrecord.o libradio.a
$(CC) -g -o $@ $^ -lm -lpthread
modulate: modulate.o libradio.a
$(CC) -g -o $@ $^ -lfftw3f_threads -lfftw3f -lm -lpthread
monitor: monitor.o libradio.a
$(CC) -g -o $@ $^ -lopus -lportaudio -lncurses -lm -lpthread
opus: opus.o libradio.a
$(CC) -g -o $@ $^ -lopus -lm -lpthread
opussend: opussend.o libradio.a
$(CC) -g -o $@ $^ -lopus -lportaudio -lm -lpthread
packet: packet.o ax25.o libradio.a
$(CC) -g -o $@ $^ -lfftw3f_threads -lfftw3f -lm -lpthread
pcmcat: pcmcat.o libradio.a
$(CC) -g -o $@ $^ -lm -lpthread
pcmsend: pcmsend.o libradio.a
$(CC) -g -o $@ $^ -lportaudio -lm -lpthread
radio: main.o am.o audio.o bandplan.o display.o doppler.o fm.o linear.o modes.o radio.o radio_status.o libradio.a
$(CC) -g -o $@ $^ -lfftw3f_threads -lfftw3f -lncurses -lm -lpthread
# Binary libraries
libfcd.a: fcd.o hid-libusb.o
ar rv $@ $?
ranlib $@
libradio.a: attr.o ax25.o decimate.o dsp.o filter.o misc.o multicast.o rtcp.o status.o osc.o
ar rv $@ $?
ranlib $@
# Main programs
aprs.o: aprs.c ax25.h multicast.h misc.h dsp.h
aprsfeed.o: aprsfeed.c ax25.h multicast.h misc.h
funcube.o: funcube.c fcd.h fcdhidcmd.h hidapi.h sdr.h radio.h osc.h misc.h multicast.h
iqplay.o: iqplay.c misc.h radio.h osc.h sdr.h multicast.h attr.h
iqrecord.o: iqrecord.c radio.h osc.h sdr.h multicast.h attr.h
modulate.o: modulate.c misc.h filter.h radio.h osc.h sdr.h
monitor.o: monitor.c misc.h multicast.h
opus.o: opus.c misc.h multicast.h
opussend.o: opussend.c misc.h multicast.h
packet.o: packet.c filter.h misc.h multicast.h ax25.h dsp.h osc.h
pcmcat.o: pcmcat.c multicast.h
pcmsend.o: pcmsend.c misc.h multicast.h
control.o: control.c radio.h osc.h sdr.h misc.h filter.h bandplan.h multicast.h dsp.h
# Components of libfcd.a
fcd.o: fcd.c fcd.h hidapi.h fcdhidcmd.h
hid-libusb.o: hid-libusb.c hidapi.h
# components of libradio.a
attr.o: attr.c attr.h
ax25.o: ax25.c ax25.h
decimate.o: decimate.c decimate.h
dsp.o: dsp.c dsp.h misc.h
filter.o: filter.c misc.h filter.h dsp.h
knob.o: knob.c misc.h
misc.o: misc.c misc.h
multicast.o: multicast.c multicast.h misc.h
rtcp.o: rtcp.c multicast.h
status.o: status.c status.h
touch.o: touch.c misc.h
osc.o: osc.c osc.h
# Components of radio
am.o: am.c misc.h filter.h radio.h osc.h sdr.h
audio.o: audio.c misc.h multicast.h
bandplan.o: bandplan.c bandplan.h
display.o: display.c radio.h osc.h sdr.h misc.h filter.h bandplan.h multicast.h dsp.h
doppler.o: doppler.c radio.h osc.h sdr.h misc.h
fm.o: fm.c misc.h filter.h radio.h osc.h sdr.h
hackrf.o: hackrf.c sdr.h radio.h osc.h misc.h multicast.h decimate.h
linear.o: linear.c misc.h filter.h radio.h osc.h sdr.h
main.o: main.c radio.h osc.h sdr.h filter.h misc.h multicast.h dsp.h
misc.o: misc.c radio.h osc.h sdr.h
modes.o: modes.c radio.h sdr.h osc.h misc.h
radio_status.o: radio_status.c status.h radio.h misc.h dsp.h filter.h multicast.h
radio.o: radio.c radio.h sdr.h osc.h filter.h misc.h