OBJECTS=`ls ../IOLib/mod*.o`
GCC=gcc -O3 -I. 
GHC=ghc -O3 -fglasgow-exts -smp --make -laio -lipq -L. -i../IOLib -i../ThreadLib 
GHC_PROF=ghc -prof -auto-all  -fglasgow-exts -smp --make -laio -lipq -L. -i../IOLib -i../ThreadLib 

all:	main

main:
	${GHC} ${OBJECTS} main.hs -o $main.exe

prof:
	${GHC_PROF} ${OBJECTS} ${MAIN}.hs -o ${MAIN}.bin

setup:
	sudo modprobe iptable_filter || true
	sudo modprobe ip_queue || true
	sudo iptables -A INPUT -p TCP --dport 8888 -j QUEUE
	sudo sysctl -w fs.file-max=1048576
	sudo sysctl -w fs.aio-max-nr=1048576
	sudo sysctl -w kernel.threads-max=1048576

clean:
	rm -f *.o *.hi *~ *.bin

