Initial clone in from local subversion server

This commit is contained in:
2011-05-26 02:24:33 +00:00
commit ccca81e04e
87 changed files with 20290 additions and 0 deletions

98
Makefile Executable file
View File

@@ -0,0 +1,98 @@
# This makefile is a bit hackish. I wrote it early in the AM.
# Fohgiveuhness, please!!
ifndef $(CFG)
CFG=Debug
endif
# you can also pass : mingw32 and macosx
ifndef $(OS)
OS=linux
endif
LIBNAME=game
PROJECTHOME=$(shell pwd)
SDL_CFLAGS=$(shell sdl-config --cflags)
SDL_LDFLAGS=$(shell sdl-config --static-libs)
LIBDIR=/usr/lib
HEADERDIR=/usr/include
ADDL_CFLAGS=
ifeq "$(OS)" "mingw32"
ADDL_CFLAGS=-mwindows
endif
ifeq "$(CFG)" "Debug"
OUTDIR=Debug
LIBTARGET=lib$(LIBNAME)-dbg
LINKLIB=game-dbg
CXXFLAGS=-pg -I./source -g -ggdb -gstabs -c $(SDL_CFLAGS) $(ADDL_CFLAGS)
endif
ifeq "$(CFG)" "Release"
OUTDIR=Release
LIBTARGET=lib$(LIBNAME)
LINKLIB=game
CXXFLAGS=-I./source -c $(SDL_CFLAGS) $(ADDL_CFLAGS)
endif
LINKLIBS=-L../../$(CFG) -L$(OUTDIR) -l$(LINKLIB) $(SDL_LDFLAGS) -lSDL_image -lSDL_mixer
LIBOBJ=$(OUTDIR)/Common.o \
$(OUTDIR)/FontRenderer.o \
$(OUTDIR)/Renderable.o \
$(OUTDIR)/SpriteStrip.o \
$(OUTDIR)/Animation.o \
$(OUTDIR)/Actor.o \
$(OUTDIR)/Display.o \
$(OUTDIR)/Display2D.o \
$(OUTDIR)/MenuDisplay.o \
$(OUTDIR)/Game.o
CC = gcc
CXX = g++
LD = $(CXX)
INSTALL = $(shell which install)
$(OUTDIR)/%.o : %.cpp
$(CXX) $(CXXFLAGS) -o $@ $<
ifeq "$(OS)" "macosx"
all: sharedlib
else
all: staticlib
endif
# this was a pain in my ass cross-platform, so I killed it
sharedlib: $(LIBOBJ)
$(CXX) -dynamiclib -Wl,-headerpad_max_install_names,-undefined,dynamic_lookup,-compatibility_version,1.0,-current_version,1.0,-install_name,/usr/lib/$(LIBTARGET).dylib -o $(CFG)/$(LIBTARGET).dylib $(LIBOBJ)
staticlib: $(LIBOBJ)
$(AR) rcs $(OUTDIR)/$(LIBTARGET) $(LIBOBJ)
.PHONY: docs
docs:
doxygen doxygen.conf
.PHONY: clean
clean:
rm -f $(OUTDIR)/*.o
rm -f $(OUTDIR)/$(LIBTARGET).*
.PHONY: demos
demos:
cd demo && ./build-demos.sh $(CFG)
.PHONY: rebuild
rebuild:
make clean
make CFG=$(CFG) OS=$(OS)
.PHONY: install
install:
$(INSTALL) $(OUTDIR)/$(LIBTARGET)* $(LIBDIR)/
mkdir -p $(HEADERDIR)/libgame
$(INSTALL) *h $(HEADERDIR)/libgame/
.PHONY: deps
deps:
cd deps && make