# # Makefile Written by S. Wartik, April 1991 # Modified by C. Fox, November 1991 # # Makefile for bit-vector implementation of boolean operations. # # The make directives are: # # bv.o A bit vector implementation of boolean operations. # # hash.o A hashing implementation of boolean operations. # # all (default) bv.o and hash.o. # # bvdriver A test driver for the bit vector-based implementation. # # hdriver A test driver for the hashing-based implementation. # # regression A combined execution of bvregression and hregression. # # bvregression An execution of the bit vector test driver, with an # indication of whether the results are as expected. # # hregression An execution of the hashing test driver, with an # indication of whether the results are as expected. # BV_OBJS= bv.o BV_SRCS= bv.c BV_HDRS= bv.h HSH_OBJS= hash.o HSH_SRCS= hash.c HSH_HDRS= hash.h BV_DR_SRCS= bvdriver.c BV_DR_OBJS= bvdriver.o HSH_DR_SRCS= hdriver.c HSH_DR_OBJS= hdriver.o all : $(BV_OBJS) $(HSH_OBJS) bvdriver: $(BV_OBJS) $(BV_DR_OBJS) $(CC) $(LDFLAGS) -o bvdriver $(BV_DR_OBJS) $(BV_OBJS) hdriver: $(HSH_OBJS) $(HSH_DR_OBJS) $(CC) $(LDFLAGS) -o hdriver $(HSH_DR_OBJS) $(HSH_OBJS) $(BV_DR_OBJS): $(BV_DR_SRCS) $(BV_HDRS) $(CC) -c $(CFLAGS) $(BV_DR_SRCS) $(HSH_DR_OBJS): $(DR_SRCS) $(HSH_HDRS) $(CC) -c $(CFLAGS) $(HSH_DR_SRCS) bvregression: bvdriver ./bvdriver 0 255 # Exercise maximum possible range. ./bvdriver 1 256 # Ditto, but offset a bit. ./bvdriver -10 34 # Can ranges include all domain values? ./bvdriver 20 26 # Test a small range too. ./bvdriver 1024 1100 # Test a large minimum value. hregression: hdriver ./hdriver 0 20 101 # Large hash table, few elements. ./hdriver 0 101 20 # Small hash table, many elements. regression: bvregression hregression bv.o: bv.h hash.o: hash.h