# Makefile for the UPC Operations Microbenchmarking Suite # 2009 include ./config/make.def ifndef NTHREADS NT=1 else ifeq ($(NTHREADS),0) NT=1 else NT=$(NTHREADS) endif endif THREADS = $(THREADS_SWITCH)$(NT) default : usage UOMS.upc data_print_$(NT).o utilities_$(NT).o affinity_$(NT).o mem_manager_$(NT).o init_$(NT).o timers.o \ timers/timers.h mkdir -p ../bin $(UPCC) $(UPCFLAGS) $(THREADS) UOMS.upc -c -I./timers -o UOMS_$(NT).o $(UPCLINK) $(UPCLINKFLAGS) $(THREADS) -o ../bin/UOMS.$(NTHREADS) *_$(NT).o \ timers/timers.o utils/*_$(NT).o usage : @ echo "Type \"make help\" for usage" @ echo " " timers.o : timers/timers.c $(CC) $(CFLAGS) timers/timers.c -c -o timers/timers.o affinity_$(NT).o : affinity.upc $(UPCC) $(UPCFLAGS) $(THREADS) affinity.upc -c -o affinity_$(NT).o mem_manager_$(NT).o : mem_manager.upc $(UPCC) $(UPCFLAGS) $(THREADS) mem_manager.upc -c -o mem_manager_$(NT).o init_$(NT).o : init.upc $(UPCC) $(UPCFLAGS) $(THREADS) init.upc -c -o init_$(NT).o data_print_$(NT).o : utils/data_print.upc $(UPCC) $(UPCFLAGS) $(THREADS) -I./ utils/data_print.upc -c -o utils/data_print_$(NT).o utilities_$(NT).o : utils/utilities.upc $(UPCC) $(UPCFLAGS) $(THREADS) utils/utilities.upc -c -o utils/utilities_$(NT).o help : @ echo "Usage: " @ echo "make NTHREADS=NUMBER_OF_UPC_THREADS" @ echo " " @ echo "E.g., for 128 threads:" @ echo "make NTHREADS=128" @ echo " " clean : rm -f *.o rm -f timers/*.o rm -f utils/*.o rm -Rf *pthread-link mrproper : clean find ../ -name '*~' | xargs rm -Rf rm -Rf ../bin/* rm -Rf config/make.def