CC=g++

all: precompute_bits wheelgen

precompute_bits: precompute_bits.cc
	$(CC) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) precompute_bits.cc -o precompute_bits

wheelgen: wheelgen.o combinatorics.o
	$(CC) $(LDFLAGS) wheelgen.o combinatorics.o -o wheelgen

wheelgen.o: wheelgen.cc wheelgen.h combinatorics.h
	$(CC) $(CPPFLAGS) $(CXXFLAGS) -c wheelgen.cc -o wheelgen.o

combinatorics.o: combinatorics.cc combinatorics.h bitcounts16.h
	$(CC) $(CPPFLAGS) $(CXXFLAGS) -c combinatorics.cc -o combinatorics.o

clean:
	rm -rf *.o
	rm -rf wheelgen
	rm -rf precompute_bits