-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathmakefile.linux
More file actions
40 lines (33 loc) · 2.08 KB
/
makefile.linux
File metadata and controls
40 lines (33 loc) · 2.08 KB
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
CXXFLAGS = -DALSA_DEVICE=\"default\" -Wall -O3 -ggdb -std=c++1y -fPIC -I. -I/usr/include/lua5.3 #-flto
CFLAGS = -Wall -O3 -ggdb -fPIC -Wno-unknown-pragmas -Wno-incompatible-pointer-types #-flto -DHAVE_SYS_TIME_H
BINS = ./bin/libjukebox.so ./bin/test ./bin/play ./bin/loop ./bin/soundShell ./bin/soundfontDemo
LDFLAGS = -lasound -lpthread #-flto
include makefile.common
objects += ./linux/Sound/AlsaHandle.o ./linux/Mixer/AlsaMixer.o \
./linux/Sound/States/AlsaState.o ./linux/Sound/States/AlsaPaused.o \
./linux/Sound/States/AlsaPlaying.o ./linux/Sound/States/AlsaStopped.o
SRCS += ./linux/Sound/AlsaHandle.cpp ./linux/Mixer/AlsaMixer.cpp \
./linux/Sound/States/AlsaState.cpp ./linux/Sound/States/AlsaPaused.cpp \
./linux/Sound/States/AlsaPlaying.cpp ./linux/Sound/States/AlsaPlaying.cpp
all : $(BINS)
./bin/libjukebox.so : $(objects)
g++ -std=c++1y -ggdb -Wall $(objects) -shared $(LDFLAGS) -o ./bin/libjukebox.so
./bin/test : genheader ./jukebox_test/demo/main.o
g++ -std=c++1y -ggdb -Wall ./jukebox_test/demo/main.cpp -I. -L./bin -ljukebox -o ./bin/test #-flto
./bin/play : genheader ./jukebox_test/demo/play.o
g++ -std=c++1y -ggdb -Wall ./jukebox_test/demo/play.cpp -I. -L./bin -ljukebox -o ./bin/play #-flto
./bin/loop : genheader ./jukebox_test/demo/loop.o ./bin/libjukebox.so
g++ -std=c++1y -ggdb -Wall ./jukebox_test/demo/loop.o -Lbin -ljukebox -o ./bin/loop #-flto
./bin/soundShell : genheader ./jukebox_test/demo/soundShell.o ./bin/libjukebox.so
g++ -std=c++1y -ggdb -Wall ./jukebox_test/demo/soundShell.o -Lbin -ljukebox -llua5.3 -o ./bin/soundShell #-flto
./bin/soundfontDemo : genheader ./jukebox_test/demo/soundfontDemo.o ./bin/libjukebox.so
g++ -std=c++1y -ggdb -Wall ./jukebox_test/demo/soundfontDemo.o -Lbin -ljukebox -o ./bin/soundfontDemo #-flto
.PHONY : clean genheader
genheader :
./genheader.sh
clean :
rm -rf $(DEPDIR) $(objects) ./jukebox_test/demo/*.o $(BINS)
$(shell mkdir -p $(DEPDIR)/linux >/dev/null)
$(shell mkdir -p $(DEPDIR)/linux/Mixer >/dev/null)
$(shell mkdir -p $(DEPDIR)/linux/Sound >/dev/null)
$(shell mkdir -p $(DEPDIR)/linux/Sound/States >/dev/null)