CC=gcc -O2 -c
LD=gcc -s -o

all:\
makehash

clean:
	rm -f uint32.h *.o makehash

makehash.o: \
uint32.h makehash.c makehash.h
	${CC} makehash.c

makehash: \
makehash.o surf.o
	${LD} makehash makehash.o surf.o

surf.o: \
surf.c surf.h
	${CC} surf.c

uint32.h: \
tryulong32.c uint32.h1 uint32.h2
	${CC} tryulong32.c
	${LD} tryulong32 tryulong32.o
	( ./tryulong32 >/dev/null 2>&1 && cat uint32.h2 || cat uint32.h1 ) > uint32.h
	rm -f tryulong32.o tryulong32
