CPP = g++
OBJECTS = particle.o wombatulf.o bottle.o ib.o skipper.o hamster.o gl.o demo.o window.o scene.o texture.o jpeg.o light.o blur.o roachtunnell.o
CFLAGS = -ggdb -DDEBUG
LIBS = -lGLU -lGL -L/usr/X11R6/lib -lpthread -ljpeg -lSDL -lvorbisfile -lvorbis
#CFLAGS = -march=pentium4 -mmmx -msse -msse2 -O4 -fomit-frame-pointer -ffast-math
CFLAGS = -march=i686 -O2 -fomit-frame-pointer
#CFLAGS = -march=i686 -O4 -fomit-frame-pointer -ffast-math
# STATIC_LIBS = libminifmod.a

all: 	noize

.cpp.o: dassrull.o
	$(CPP) $(CFLAGS) -c $<

hamster.c: hamster.h data/wombat.jpg util/bin2h
	util/bin2h data/wombat.jpg HAMSTER c > hamster.c

hamster.h:  data/wombat.jpg util/bin2h
	util/bin2h data/wombat.jpg HAMSTER h > hamster.h

skipper.c: skipper.h data/skipper.jpg util/bin2h
	util/bin2h data/skipper.jpg SKIPPER c > skipper.c

skipper.h:  data/skipper.jpg util/bin2h
	util/bin2h data/skipper.jpg SKIPPER h > skipper.h

ib.c: ib.h data/ib.jpg util/bin2h
	util/bin2h data/ib.jpg IB c > ib.c

ib.h:  data/ib.jpg util/bin2h
	util/bin2h data/ib.jpg IB h > ib.h

bottle.c: bottle.h data/bottle.jpg util/bin2h
	util/bin2h data/bottle.jpg BOTTLE c > bottle.c

bottle.h:  data/bottle.jpg util/bin2h
	util/bin2h data/bottle.jpg BOTTLE h > bottle.h

particle.c: particle.h data/particle.jpg util/bin2h
	util/bin2h data/particle.jpg PART c > particle.c

particle.h:  data/particle.jpg util/bin2h
	util/bin2h data/particle.jpg PART h > particle.h

wombatulf.c: wombatulf.h data/wombatulf.jpg util/bin2h
	util/bin2h data/wombatulf.jpg WB c > wombatulf.c

wombatulf.h:  data/wombatulf.jpg util/bin2h
	util/bin2h data/wombatulf.jpg WB h > wombatulf.h

noize:	main.o $(OBJECTS) $(STATIC_LIBS)
	$(CPP) $(LIBS) -o noize main.o $(OBJECTS) $(STATIC_LIBS)
	strip noize
#	upx -9 noize
	cp noize ../

clean:
	rm hamster.h *o 
