HEADERS=triangle.h linalg.h queue.h mat.h #SPECIAL_OPTIONS=-O0 -g -D_DEBUG SPECIAL_OPTIONS=-O3 -pg -funroll-loops -fno-inline #SPECIAL_OPTIONS=-O3 -flto -funroll-loops -Winline #SPECIAL_OPTIONS= OPTIONS=-m64 -march=native -mtune=native -std=gnu99 -D_GNU_SOURCE $(SPECIAL_OPTIONS) all: singular_values singular_values: singular_values.o triangle.o linalg.o mat.o gcc $(OPTIONS) -o singular_values triangle.o linalg.o singular_values.o mat.o -lm -lgsl -lcblas -lgmp -lmps -lpthread singular_values.o: singular_values.c $(HEADERS) gcc $(OPTIONS) -c singular_values.c linalg.o: linalg.c $(HEADERS) gcc $(OPTIONS) -c linalg.c triangle.o: triangle.c $(HEADERS) gcc $(OPTIONS) -c triangle.c mat.o: mat.c $(HEADERS) gcc $(OPTIONS) -c mat.c clean: rm -f singular_values triangle.o linalg.o singular_values.o mat.o