#Linux Makefile for id QuakeII Level Utils 
#TARGET:		 	qbsp3
#Version:			1.0
#Make file genereated:	 	Jeremy C. Witt (wittj@onramp.net)
#Original Tool Author: 		id Software
# *************************************************************** 

# Which Compiler we gonna use? (I use GCC :)
CC=gcc

# where are the Installed Files gonna go?

# Path to Commons
COMD=../../common/

# Binary Directory (Not Yet Implemented)
ODIR=./bin

# INCLUDE Files
INCLUDE=$(COMD)

#Regular Compile
# CFLAGS=-Wall -I$(INCLUDE) -I/usr/include

#Mega Optimization Flags Compile (WARNING THIS MAY NEED TO BE MODIFED TO COMPILE ON YOUR HARDWARE)
# 		When in doubt, use the vanilla version above. (It is slower tho)
CFLAGS=-O3 -Wall -funroll-loops -fomit-frame-pointer -finline-functions \
           -ffast-math -I$(INCLUDE) -I/usr/include -L/lib -L/usr/lib

# Linker Options 
LDFLAGS=-lm 

# ***************************** Begin Targets ********************

qbsp3: qbsp3.o brushbsp.o csg.o faces.o bspfile.o cmdlib.o l3dslib.o \
               lbmlib.o mathlib.o scriplib.o threads.o trilib.o \
               polylib.o glfile.o leakfile.o map.o nodraw.o portals.o \
	       prtfile.o textures.o tree.o writebsp.o 
	$(CC) $(LDFLAGS) -o qbsp3 qbsp3.o bspfile.o cmdlib.o \
                            l3dslib.o lbmlib.o mathlib.o  \
                            scriplib.o threads.o trilib.o \
                            polylib.o brushbsp.o csg.o faces.o \
			    glfile.o leakfile.o map.o nodraw.o \
                            portals.o prtfile.o textures.o tree.o \
                            writebsp.o 

qbsp3.o: qbsp3.c qbsp.h
	$(CC) $(CFLAGS) -c qbsp3.c 

brushbsp.o: brushbsp.c
	$(CC) $(CFLAGS) -c brushbsp.c

csg.o: csg.c
	$(CC) $(CFLAGS) -c csg.c

faces.o: faces.c
	$(CC) $(CFLAGS) -c faces.c

glfile.o: glfile.c
	$(CC) $(CFLAGS) -c glfile.c

leakfile.o: leakfile.c
	$(CC) $(CFLAGS) -c leakfile.c

map.o: map.c
	$(CC) $(CFLAGS) -c map.c

nodraw.o: nodraw.c
	$(CC) $(CFLAGS) -c nodraw.c

portals.o: portals.c
	$(CC) $(CFLAGS) -c portals.c

prtfile.o: prtfile.c
	$(CC) $(CFLAGS) -c prtfile.c

textures.o: textures.c
	$(CC) $(CFLAGS) -c textures.c

tree.o: tree.c
	$(CC) $(CFLAGS) -c tree.c

writebsp.o: writebsp.c
	$(CC) $(CFLAGS) -c writebsp.c

bspfile.o: $(COMD)bspfile.c $(COMD)bspfile.h
	$(CC) $(CFLAGS) -c $(COMD)bspfile.c

cmdlib.o: $(COMD)cmdlib.c $(COMD)cmdlib.h
	$(CC) $(CFLAGS) -c $(COMD)cmdlib.c

l3dslib.o: $(COMD)l3dslib.c $(COMD)l3dslib.h
	$(CC) $(CFLAGS) -c $(COMD)l3dslib.c

lbmlib.o: $(COMD)lbmlib.c $(COMD)lbmlib.h
	$(CC) $(CFLAGS) -c $(COMD)lbmlib.c

mathlib.o: $(COMD)mathlib.c $(COMD)mathlib.h
	$(CC) $(CFLAGS) -c $(COMD)mathlib.c

polylib.o: $(COMD)polylib.c $(COMD)polylib.h
	$(CC) $(CFLAGS) -c $(COMD)polylib.c

scriplib.o: $(COMD)scriplib.c $(COMD)scriplib.h
	$(CC) $(CFLAGS) -c $(COMD)scriplib.c

threads.o: $(COMD)threads.c $(COMD)threads.h
	$(CC) $(CFLAGS) -c $(COMD)threads.c

trilib.o: $(COMD)trilib.c $(COMD)trilib.h
	$(CC) $(CFLAGS) -c $(COMD)trilib.c

clean:
	-rm *.o core
