summary refs log tree commit diff
path: root/Makefile.zakk
blob: f8b1e5db409e102227db27f12660df5e2e55555c (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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
CC := gcc
CXX := g++
LINKER := g++
ASM := nasm
SRCDIR := ./Source
BINDIR := ./objs
EXE := $(BINDIR)/blackshades

CFLAGS := -g $(shell sdl-config --cflags) -I/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CarbonSound.framework/Versions/A/Headers -I/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/Headers -I/System/Library/Frameworks/GLUT.framework/Versions/A/Headers -I/System/Library/Frameworks/DrawSprocket.framework/Versions/A/Headers -I/Developer/Headers/FlatCarbon -I/System/Library/Frameworks/AGL.framework/Versions/A/Headers -I/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers -I/sw/include -I/sw/include/AL -I/usr/X11R6/include -D POOLOOPS -I$(SRCDIR)
CXXFLAGS := $(CFLAGS)
LDFLAGS := $(shell sdl-config --libs) -framework QuickTime

SRCS := Camera.cpp \
        Decals.cpp \
        Files.cpp \
        Fog.cpp \
        Frustum.cpp \
        GameDraw.cpp \
        GameInitDispose.cpp \
        GameLoop.cpp \
        GameTick.cpp \
        Globals.cpp \
        Main.cpp \
        Maths.cpp \
        Models.cpp \
        Person.cpp \
        Quaternions.cpp \
        Skeleton.cpp \
        Sprites.cpp \
        TGALoader.cpp \
        Text.cpp \
        Timer.cpp

OBJS1 := $(SRCS:.c=.o)
OBJS2 := $(OBJS1:.cpp=.o)
OBJS3 := $(OBJS2:.asm=.o)
OBJS := $(foreach f,$(OBJS3),$(BINDIR)/$(f))
SRCS := $(foreach f,$(SRCS),$(SRCDIR)/$(f))

CLEANUP = $(wildcard *.exe) $(wildcard *.obj) \
          $(wildcard $(BINDIR)/*.exe) $(wildcard $(BINDIR)/*.obj) \
          $(wildcard *~) $(wildcard *.err) \
          $(wildcard .\#*) core $(EXE)


# Rules for compiling individual source files...

$(BINDIR)/%.o: $(SRCDIR)/%.cpp
	$(CC) -c -o $@ $< $(CXXFLAGS)

$(BINDIR)/%.o: $(SRCDIR)/%.c
	$(CC) -c -o $@ $< $(CFLAGS)

$(BINDIR)/%.o: $(SRCDIR)/%.asm
	$(ASM) $(ASMFLAGS) -o $@ $<

.PHONY: all bindir blackshades
all: blackshades

blackshades: $(BINDIR) $(OBJS)
	$(LINKER) -o $(EXE) $(OBJS) $(LDFLAGS)

$(BINDIR) :
	$(MAKE) bindir

bindir:
	mkdir -p $(BINDIR)

distclean: clean

clean:
	rm -f $(CLEANUP)
	rm -rf $(BINDIR)

# end of Makefile.