# Copyright 2021 Chris Thachuk. All rights reserved. Permission is # hereby granted to students registered for University of Washington # CSE 333 for use solely during Autumn Quarter 2021 for purposes of # the course. No other use, copying, distribution, or modification # is permitted without prior written consent. Copyrights for # third-party components of this work must be honored. Instructors # interested in reusing these course materials should contact the # author. AR = ar ARFLAGS = rcs CC = gcc CXX = g++ # define useful flags to cc/ld/etc. CXXFLAGS = -pg -g -Wall -std=c++17 -I. -I./benchmark/include -mavx2 -mavx512bw -O3 LDFLAGS = -L. -L./benchmark/build/src -lpthread -lbenchmark OBJS = dnautil.o EXE = mydnapool BENCH_EXE = mybenchmark HEADERS = dnautil.h # default target all: $(EXE) $(BENCH_EXE) $(EXE): $(OBJS) mydnapool.o $(CXX) $(CXXFLAGS) -o $(EXE) $(OBJS) mydnapool.o $(BENCH_EXE): $(OBJS) $(CXX) mybenchmark.cc $(CXXFLAGS) $(LDFLAGS) -o $(BENCH_EXE) $(OBJS) # source files %.o: %.cc $(HEADERS) $(CXX) $(CXXFLAGS) $(LDFLAGS) -c $< # phony target - remove generated files and backups clean: rm -rf $(EXE) $(BENCH_EXE) *.o *~ *.dSYM gmon.out