More moving stuff around
git-svn-id: https://aklabs.dyndns.org/svn/aklabs/trunk/games/spaceshooter@52 eb184899-6090-47d4-a65b-558f62f6ea1c
This commit is contained in:
92
Makefile
Normal file
92
Makefile
Normal file
@@ -0,0 +1,92 @@
|
||||
# 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
|
||||
|
||||
TARGET=HolyShitAliens
|
||||
BINTARGET=$(TARGET)
|
||||
PROJECTHOME=$(shell pwd)
|
||||
SDL_CFLAGS=$(shell sdl-config --cflags)
|
||||
SDL_LDFLAGS=$(shell sdl-config --libs)
|
||||
LIBDIR=/usr/lib
|
||||
HEADERDIR=/usr/include
|
||||
ADDL_CFLAGS=
|
||||
|
||||
ifeq "$(OS)" "mingw32"
|
||||
ADDL_CFLAGS=-mwindows -DBUILD_MINGW32
|
||||
endif
|
||||
ifeq "$(OS)" "linux"
|
||||
ADDL_CFLAGS=-DBUILD_LINUX
|
||||
endif
|
||||
ifeq "$(OS)" "macosx"
|
||||
ADDL_CFLAGS=-DBUILD_MACOSX
|
||||
endif
|
||||
|
||||
# default for release configs
|
||||
ifeq "$(CFG)" "Release"
|
||||
OUTDIR=Release
|
||||
ifeq "$(OS)" "mingw32"
|
||||
BINTARGET=$(TARGET).exe
|
||||
else
|
||||
BINTARGET=$(TARGET)
|
||||
endif
|
||||
LINKLIB=game
|
||||
CXXFLAGS=-I$(HEADERDIR) -I./cpp -c $(SDL_CFLAGS) $(ADDL_CFLAGS)
|
||||
endif
|
||||
ifeq "$(CFG)" "Debug"
|
||||
OUTDIR=Debug
|
||||
ifeq "$(OS)" "mingw32"
|
||||
BINTARGET=$(TARGET)-dbg.exe
|
||||
else
|
||||
BINTARGET=$(TARGET)-dbg
|
||||
endif
|
||||
LINKLIB=game-dbg
|
||||
CXXFLAGS=-pg -I$(HEADERDIR) -I./cpp -Werror -g -ggdb -gstabs -Wall -c $(SDL_CFLAGS) $(ADDL_CFLAGS)
|
||||
endif
|
||||
|
||||
LINKLIBS=-L$(LIBDIR) -l$(LINKLIB) $(SDL_LDFLAGS) -lSDL_image -lSDL_mixer -lSDL_gfx -lSDL_ttf
|
||||
|
||||
BINOBJ=$(OUTDIR)/GameDisplay.o \
|
||||
$(OUTDIR)/GameLogic.o \
|
||||
$(OUTDIR)/StarfieldBackground.o \
|
||||
$(OUTDIR)/Character.o \
|
||||
$(OUTDIR)/HUD.o \
|
||||
$(OUTDIR)/main.o
|
||||
|
||||
CC = gcc
|
||||
CXX = g++
|
||||
LD = $(CXX)
|
||||
INSTALL = $(which install)
|
||||
|
||||
$(OUTDIR)/%.o : cpp/%.cpp
|
||||
$(CXX) $(CXXFLAGS) -o $@ $<
|
||||
|
||||
all: bin
|
||||
|
||||
bin: $(BINOBJ)
|
||||
$(LD) -pg -o $(OUTDIR)/$(BINTARGET) \
|
||||
$(BINOBJ) $(LINKLIBS)
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
rm -f $(OUTDIR)/*.o
|
||||
rm -f $(OUTDIR)/$(BINTARGET)
|
||||
|
||||
.PHONY: rebuild
|
||||
rebuild:
|
||||
make clean
|
||||
make CFG=$(CFG)
|
||||
|
||||
|
||||
#.PHONY: install
|
||||
#install:
|
||||
# $(INSTALL) $(OUTDIR)/$(LIBTARGET) $(LIBDIR)/$(TARGET)
|
||||
# $(INSTALL) source/gcminfo.h $(HEADERDIR)/libgcm.h
|
||||
Reference in New Issue
Block a user