aboutsummaryrefslogtreecommitdiff
path: root/Makefile
blob: ebc57b998df05afddf57734ba8aa510120bf7caf (plain) (blame)
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
CPPC?=g++
AR?=ar
OPTFLAGS?=-g3 -ggdb
CFLAGS= -Wall -Wextra -I. $(OPTFLAGS) -D DEBUG_LEVEL_TRACE -Islox -Iglox
LDFLAGS= -Lslox -Lglox -lslox -lglox -lGL -lGLU -lSDL -lm -ljpeg -lSDL_image -lGLEW
OBJECTS=obs/Main.o obs/AIShip.o obs/ControlMultiplexer.o obs/PlayerShip.o obs/ApplicationInit.o obs/SonsOfSolApplication.o obs/Projectile.o obs/ApplicationDisplay.o
BINARY=SonsOfSol
all: submodules setup $(OBJECTS)
	$(CPPC) -o $(BINARY) $(OBJECTS) $(LDFLAGS)

genmake:
	find . -name genmake.sh -exec {} \;

setup:
	mkdir -p obs/

submodules:
	for i in $$(find */ -name Makefile) ; do \
		cd $$(dirname $$i) && make && cd ..; \
	done

clean:
	- rm -rf obs $(BINARY)
	for i in $$(find */ -name Makefile) ; do \
		cd $$(dirname $$i) && make clean && cd ..; \
	done
obs/Main.o: Main.cpp \
                            sons_of_sol/SonsOfSolApplication.hpp
	$(CPPC) $(CFLAGS) -o $@ -c $<

obs/AIShip.o: sons_of_sol/private_db/AIShip.cpp \
                            sons_of_sol/AIShip.hpp
	$(CPPC) $(CFLAGS) -o $@ -c $<

obs/ControlMultiplexer.o: sons_of_sol/private_db/ControlMultiplexer.cpp \
                            sons_of_sol/ControlMultiplexer.hpp
	$(CPPC) $(CFLAGS) -o $@ -c $<

obs/PlayerShip.o: sons_of_sol/private_db/PlayerShip.cpp \
                            sons_of_sol/PlayerShip.hpp
	$(CPPC) $(CFLAGS) -o $@ -c $<

obs/ApplicationInit.o: sons_of_sol/private_db/ApplicationInit.cpp \
                            sons_of_sol/SonsOfSolApplication.hpp
	$(CPPC) $(CFLAGS) -o $@ -c $<

obs/SonsOfSolApplication.o: sons_of_sol/private_db/SonsOfSolApplication.cpp \
                            sons_of_sol/SonsOfSolApplication.hpp
	$(CPPC) $(CFLAGS) -o $@ -c $<

obs/Projectile.o: sons_of_sol/private_db/Projectile.cpp \
                            sons_of_sol/Projectile.hpp
	$(CPPC) $(CFLAGS) -o $@ -c $<

obs/ApplicationDisplay.o: sons_of_sol/private_db/ApplicationDisplay.cpp \
                            sons_of_sol/SonsOfSolApplication.hpp
	$(CPPC) $(CFLAGS) -o $@ -c $<