CFLAGS=-DVERSION=`cat version` -I.
CFILES=tik.c color.c encode.c render.c noise.c reader.c writer.c
HFILES=tik.h color.h encode.h render.h noise.h reader.h writer.h Makefile
OFILES=tik.o color.o encode.o render.o noise.o reader.o writer.o
OPTS=-O3 -ffast-math -funroll-loops -fomit-frame-pointer

#	automatically updates version when things change on a new date
#	then goes on to build tik
all:	$(CFILES) $(HFILES)
	date +%Y%m%d >newversion
	if `cmp --silent newversion version` ; then rm -f newversion ; else mv newversion version ; echo "New version is `cat version`" ; fi
	make tik

tik:	$(OFILES)
	gcc $(OFILES) -o tik -lm -ljpeg ${LIBS} $(CFLAGS)

tik.o:	tik.c $(HFILES) version
	gcc tik.c -c -o tik.o $(OPTS) $(CFLAGS)

encode.o:	encode.c $(HFILES) version
	gcc encode.c -c -o encode.o $(OPTS) $(CFLAGS)

render.o:	render.c $(HFILES) version
	gcc render.c -c -o render.o $(OPTS) $(CFLAGS)

noise.o:	noise.c $(HFILES) version
	gcc noise.c -c -o noise.o $(OPTS) $(CFLAGS)

reader.o:	reader.c $(HFILES) version
	gcc reader.c -c -o reader.o $(OPTS) $(CFLAGS)

writer.o:	writer.c $(HFILES) version
	gcc writer.c -c -o writer.o $(OPTS) $(CFLAGS)

tgz:	$(CFILES) $(HFILES) version
	echo "Creating tik'`cat version`.tgz"
	tar -zcvf 'tik'`cat version`'.tgz' Makefile $(CFILES) $(HFILES) version
	echo "Created tik`cat version`.tgz at `date`" >tgz

clean:	
	rm -f tik.o color.o encode.o render.o noise.o reader.o writer.o newversion

