1CC = gcc 2CFLAGS = -O3 -march=native -std=c99 -pedantic -Wall -Wextra -Wshadow -Wpointer-arith -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes 3 4all: test_float test_double fast_copy.o fht.o 5 6OBJ := dumb_fht.o fast_copy.o fht.o 7 8%.o: %.c 9 $(CC) $< -o $@ -c $(CFLAGS) 10 11test_%: test_%.c $(OBJ) 12 $(CC) $< $(OBJ) -o $@ $(CFLAGS) 13 14test_double_header_only: test_double_header_only.c 15 $(CC) $< -o $@ $(CFLAGS) 16 17test_float_header_only: test_double_header_only.c 18 $(CC) $< -o $@ $(CFLAGS) 19 20clean: 21 rm -f test_float test_double test_float_header_only test_double_header_only $(OBJ) 22