aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoricculus <icculus@5198baeb-e213-0410-be47-fc2ff85ca46f>2003-01-02 21:26:40 +0000
committericculus <icculus@5198baeb-e213-0410-be47-fc2ff85ca46f>2003-01-02 21:26:40 +0000
commit42aacf6341dec6dfd19eb94bde0f3457f3c00ca6 (patch)
tree484d6a193a1da4176f0a8ae8fe42e920887c73b4
parente17acec1c9bec3a26d97ca2873bb77bdcb48665e (diff)
downloadblackshades-42aacf6341dec6dfd19eb94bde0f3457f3c00ca6.tar.gz
Incomplete, untested Makefile. Slightly OSX-specific right now.
git-svn-id: svn://svn.icculus.org/blackshades/trunk@3 5198baeb-e213-0410-be47-fc2ff85ca46f
-rw-r--r--Makefile77
1 files changed, 77 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..3ef0336
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,77 @@
+CC := gcc
+CXX := g++
+LINKER := g++
+ASM := nasm
+SRCDIR := ./Source
+BINDIR := ./objs
+EXE := $(BINDIR)/blackshades
+
+CFLAGS := -g $(shell sdl-config --cflags) -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.
+
+