dist_c.o: dist_c.c dist_c.h
	gcc -O3 -c dist_c.c -o dist_c.o -Wall -Werror

microbench_dist_c: microbench_dist.c dist_c.o
	gcc -O3 microbench_dist.c dist_c.o -o microbench_dist_c -Wall -Werror -lm

microbench_dist_haskell: dist_c.o microbench_dist.hs
	ghc --make dist_c.o microbench_dist.hs -o microbench_dist_haskell -fforce-recomp -O2 -fexcess-precision

microbench_dist_haskell_fviaC: dist_c.o microbench_dist.hs
	ghc --make dist_c.o microbench_dist.hs -o microbench_dist_haskell_fviaC -fforce-recomp -O2 -fexcess-precision -fvia-C -optc-O3
