-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmakefile
More file actions
57 lines (39 loc) · 1.2 KB
/
makefile
File metadata and controls
57 lines (39 loc) · 1.2 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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
IDIR =./include
CC=gcc
CFLAGS=-I$(IDIR)
CPFLAGS=-c -Wall -g -O0
EXE=gofish
ODIR=./obj
LDIR=./lib
SRCDIR=./src
MODELSRC=$(SRCDIR)/models
CTRLSRC=$(SRCDIR)/controllers
VIEWSRC=$(SRCDIR)/views
LIBS=-lm
all: gofish
$(EXE): $(ODIR)/$(EXE).o $(ODIR)/test.o $(ODIR)/cardset.o $(ODIR)/stack.o $(ODIR)/carddeck.o $(ODIR)/player.o $(ODIR)/movehistory.o
$(CC) -o $@ $^ $(CFLAGS) $(LIBS)
$(ODIR)/$(EXE).o: $(SRCDIR)/gofish.c $(wildcard $(MODELSRC)/*.c) $(wildcard $(CTRLSRC)/*.c) $(widlcard $(VIEWSRC)/*.c)
$(CC) $(CPFLAGS) -o $@ $< $(CFLAGS)
$(ODIR)/cardset.o: $(MODELSRC)/cardset.c
$(CC) $(CPFLAGS) -o $@ $< $(CFLAGS)
$(ODIR)/stack.o: $(MODELSRC)/stack.c
$(CC) $(CPFLAGS) -o $@ $< $(CFLAGS)
$(ODIR)/carddeck.o: $(MODELSRC)/carddeck.c
$(CC) $(CPFLAGS) -o $@ $< $(CFLAGS)
$(ODIR)/player.o: $(MODELSRC)/player.c
$(CC) $(CPFLAGS) -o $@ $< $(CFLAGS)
$(ODIR)/movehistory.o: $(MODELSRC)/movehistory.c
$(CC) $(CPFLAGS) -o $@ $< $(CFLAGS)
$(ODIR)/test.o: $(SRCDIR)/test.c
$(CC) $(CPFLAGS) -o $@ $< $(CFLAGS)
.PHONY: clean
clean:
rm -f $(ODIR)/*.o *~
cleanall: clean
rm -f $(EXE)
rm -fR $(EXE).dSYM/
run:
./$(EXE)
val:
valgrind --leak-check=full --show-leak-kinds=all --dsymutil=yes --track-origins=yes ./$(EXE)