-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
42 lines (33 loc) · 1006 Bytes
/
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
TARGET = Contris
OBJDIRBASE = obj
DEPDIRBASE = dep
TARGETDIRBASE = bin
CPP = g++
ECHO = echo
RM = rm
CP = cp
MKDIR = mkdir
MAKE = make
EXIT = exit
LS = ls
CPPFILES = $(shell $(LS) -t *.cpp)
CPPFLAGS = `sdl-config --cflags`
LFLAGS = `sdl-config --libs` -lSDL_image -lSDL_ttf
OBJDIR = $(OBJDIRBASE)/$(CFGSUBDIR)
DEPDIR = $(DEPDIRBASE)/$(CFGSUBDIR)
TARGETDIR = $(TARGETDIRBASE)/$(CFGSUBDIR)
TARGETFILE = $(TARGETDIR)/$(TARGET)
OBJFILES = $(CPPFILES:%.cpp=$(OBJDIR)/%.o)
DEPFILES = $(CPPFILES:%.cpp=$(DEPDIR)/%.d)
$(TARGETFILE): dirs $(OBJFILES)
@$(ECHO) "Linking" $(TARGETFILE)...
@$(CPP) $(LFLAGS) $(OBJFILES) -o $(TARGETFILE)
@$(CP) Verdana.ttf $(TARGETDIRBASE)
$(OBJDIR)/%.o: %.cpp
@$(MKDIR) -p $(OBJDIR) $(DEPDIR)
@$(ECHO) "Compiling" $*.cpp...
@$(CPP) $(CPPFLAGS) -c $*.cpp -o $(OBJDIR)/$*.o
@$(CPP) $(CPPFLAGS) -MM $*.cpp >> $(DEPDIR)/$*.d
@$(ECHO) -n $(OBJDIR)"/" > $(DEPDIR)/$*.d ; $(CPP) $(CPPFLAGS) -MM $*.cpp >> $(DEPDIR)/$*.d
dirs:
@$(MKDIR) -p $(OBJDIR) $(DEPDIR) $(TARGETDIR)