-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
72 lines (52 loc) · 2.58 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
# add optimizations
#~ GTKMM=`pkg-config --cflags --libs gtkmm-4.0`
GTK=`pkg-config --cflags --libs gtk4`
LV2=`pkg-config --cflags lilv-0 --libs`
JACK=`pkg-config jack --libs --cflags`
SNDFILE=`pkg-config --libs sndfile --cflags`
OPUS=`pkg-config libopusenc opus --libs --cflags`
LAME=`pkg-config lame --libs --cflags`
X11=`pkg-config x11 --libs --cflags`
OPTIMIZE=#-Ofast -mtune=cortex-a72 -mcpu=cortex-a72
CC=cc
CPP=c++
all: amprack
amprack: version.o FileWriter.o main.o rack.o presets.o SharedLibrary.o engine.o jack.o process.o util.o snd.o knob.o
$(CPP) *.o -o amprack $(GTK) $(LV2) $(JACK) $(OPTIMIZE) $(SNDFILE) $(OPUS) -l:libmp3lame.a $(LAME)
main.o: main.cc main.h rack.o presets.o
$(CPP) main.cc -c $(GTK) $(LV2) $(OPTIMIZE) -Wno-deprecated-declarations
rack.o: rack.cc rack.h settings.o knob.o pluginui.o
$(CPP) rack.cc -c $(GTK) $(LV2) $(OPTIMIZE)
settings.o: settings.cc settings.h
$(CPP) settings.cc -c $(GTK) $(LV2) $(OPTIMIZE)
pluginui.o: pluginui.cpp pluginui.h
$(CPP) pluginui.cpp -c $(GTK) $(LV2) -Wno-deprecated-declarations
presets.o: presets.cc presets.h
$(CPP) presets.cc -c $(GTK) $(OPTIMIZE) $(LV2) -Wno-deprecated-declarations
SharedLibrary.o: SharedLibrary.cpp SharedLibrary.h Plugin.cpp Plugin.h PluginControl.cpp PluginControl.h
$(CPP) SharedLibrary.cpp Plugin.cpp PluginControl.cpp lv2_ext.cpp -c $(LV2) $(OPTIMIZE)
engine.o: engine.cc engine.h snd.cc snd.h
$(CPP) engine.cc -c $(JACK) $(LV2) $(OPTIMIZE) $(SNDFILE) $(GTK)
clean:
rm -v *.o amprack
missing: SharedLibrary.o missing.cc
$(CPP) missing.cc SharedLibrary.o -o missing -std=$(CPP)17 $(LV2) -I/usr/include/lv2
test: lv2_test.c
$(CC) lv2_test.c $(LV2) -I/usr/include/lv2 -o lv2_test
jack.o: jack.cc jack.h
$(CC) jack.cc -c $(JACK)
process.o: process.cc process.h
$(CC) process.cc -c
util.o: util.cc util.h
$(CPP) $(GTK) -c util.cc -Wno-deprecated-declarations
snd.o: snd.cc snd.h
$(CPP) snd.cc -c $(SNDFILE)
knob.o: knob.cpp cairo.cpp objects.cpp dictionary.cpp mem.cpp pango.cpp
#~ cc -c `pkg-config gtk4 --libs --cflags` GxRegler.cpp GxControlParameter.cpp -w -lm drawingutils.cpp GxKnob.cpp GxBigKnob.cpp
$(CPP) `pkg-config gtk4 --libs --cflags` -w -lm knob.cpp cairo.cpp objects.cpp dictionary.cpp mem.cpp pango.cpp -c
version.o:
echo \#define VERSION `git rev-list --count HEAD` > version.h
FileWriter.o: FileWriter.cpp FileWriter.h LockFreeQueue.cpp LockFreeQueue.h vringbuffer.o
$(CPP) upwaker.c vringbuffer.cc FileWriter.cpp LockFreeQueue.cpp $(OPUS) $(SNDFILE) -c -w $(JACK)
vringbuffer.o: upwaker.c vringbuffer.cc
$(CPP) -fpermissive -c upwaker.c vringbuffer.cc