-
Notifications
You must be signed in to change notification settings - Fork 1
/
Makefile
89 lines (72 loc) · 2.67 KB
/
Makefile
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
CC=gcc
CFLAGS=-g -Wall
SPECLIBS=-lcairo -lm
EXECUTABLES=sy0 symyf symymf wsymymf wsymymf_d wnums wnums_d lnums seerold gwa gwa2 wtout wtout2 wtbank0 gri1 sinevals tsinevals natf svs0 gsinxtra
# symyf: SYnthesise MY Frequency. Accepts a frequency vlaue on the command line, and synthesizes a sine wave on it, using a wavetable.
symyf: symyf.c
${CC} ${CFLAGS} $^ -o $@ -lm
# a precursor to symyf, which takes a list of shorts (one per line) and uses them to create ring and desired frequency
sy0: sy0.c
${CC} ${CFLAGS} $^ -o $@ -lm
natf: natf.c
${CC} ${CFLAGS} $^ -o $@ -lm
svs0: svs0.c
${CC} ${CFLAGS} $^ -o $@ -lm
# in this variation, there's an m before the f, which stands for multi.
# so we have 8 frequencies we'd like built from the wavetable, all output to one wav file.
# there's an extra useful data struct in this one, an srp_t, which is a point to ring struct, with an added sz value.
# indicating the number of sample points in the ring.
symymf: symymf.c
${CC} ${CFLAGS} $^ -o $@ -lm
gwa: gwa.c
${CC} ${CFLAGS} $^ -o $@ -lm
# an easier to read gwa:
gwa2: gwa2.c
${CC} ${CFLAGS} $^ -o $@ -lm
gwa2_d: gwa2.c
${CC} ${CFLAGS} -DDBG $^ -o $@ -lm
# a multiharmonic version of gwa2, was gwa3, now gsinxtra, i.e. Generate SINe eXTRA
# because you can also add harmonics (i.e. tending to sawtooth).
gsinxtra: gsinxtra.c
${CC} ${CFLAGS} $^ -o $@ -lm
wtout: wtout.c
${CC} ${CFLAGS} $^ -o $@ -lm
#returning to wtout.c after a while had me confused. Some steps I took were'nt exactly logical.
# wtout2.c is an attempt to clean up more or less.
wtout2: wtout2.c
${CC} ${CFLAGS} $^ -o $@ -lm
# wtbank0 base on seerold.c
# # does same thing, but it's been robustified
wtbank0: wtbank0.c
${CC} ${CFLAGS} -o $@ $^ ${SPECLIBS} -lm
# prototype for reading in a data from a wav file from a certain time point: used later in wsymymf.c
samh: samh.c
${CC} ${CFLAGS} $^ -o $@
# wnums: simpy extract essential numbers from a wav file, including actual values from
# a certain timepoint
wnums: wnums.c
${CC} ${CFLAGS} $^ -o $@
wnums_d: wnums.c
${CC} ${CFLAGS} -DDBG $^ -o $@
# control a certain level
lnums: lnums.c
${CC} ${CFLAGS} $^ -o $@
# control a certain level
lnums_d: lnums.c
${CC} ${CFLAGS} -DDBG $^ -o $@
# based on wnums
magbit: magbit.c
${CC} ${CFLAGS} $^ -o $@
# wsymymf: the extra w here is for WAV. The idea is to populate the wavetable from samples in a wav file
wsymymf: wsymymf.c
${CC} ${CFLAGS} $^ -o $@
# wsymymf_d: need the debug version to discover where the distortion is coming from
wsymymf_d: wsymymf.c
${CC} ${CFLAGS} -DDBG $^ -o $@
gri1: gri1.c
${CC} ${CFLAGS} -o $@ $^ ${SPECLIBS} -lm
sinevals: sinevals.c
${CC} ${CFLAGS} -o $@ $^ -lm
.PHONY: clean
clean:
rm -f ${EXECUTABLES} a.out