X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=blobdiff_plain;f=Makefile;h=706c35af1f06b2e09142dfbee730d62a178a96e6;hb=f67c0e9702cec922ccd0d3149f48bc881b42222b;hp=a0b643ad32012771c1163fd74dbc8f7557b94236;hpb=09c0156fef9837ca0eff4bf8b158d5638f18775e;p=moebius2.git diff --git a/Makefile b/Makefile index a0b643a..706c35a 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ ALLDIMS=33 64 125 246 487 968 TARGETS= primer lumpy.cfm sgtatham.cfm ring.cfm \ - minimise-33 minimise-64 \ + minimise-33 minimise-64 minimise-125 minimise-246 \ $(addprefix interpolate-, $(ALLDIMS)) \ $(addprefix view-, $(ALLDIMS)) \ $(addprefix output-, $(ALLDIMS)) @@ -11,9 +11,7 @@ SGTATHAM=sgtatham CWARNS= -Wall -Wwrite-strings -Wpointer-arith -Werror -Wshadow CXXWARNS= $(CWARNS) -Wno-shadow -Wno-error -NPROCCFLAGS := -DNPROCESSORS=$(shell ./nprocessors) - -OPTIMISE= -O2 +OPTIMISE= -O3 CFLAGS_UNIPROC= -MMD $(OPTIMISE) -g $(CWARNS) $(DIMCFLAGS) CXXFLAGS= -MMD $(OPTIMISE) -g $(CXXWARNS) CFLAGS= $(CFLAGS_UNIPROC) $(NPROCCFLAGS) @@ -26,7 +24,8 @@ all: $(TARGETS) compute: all $(MAKE) best-33.CFM - $(MAKE) best-968.CFM + $(MAKE) best-64.CFM +# $(MAKE) best-968.CFM minimise: energy.o graph.o common.o mgraph.o minimise.o half.o $(CXX) $(CXXFLAGS) -o $@ $^ $(LIBGSL) @@ -40,6 +39,13 @@ nprocessors: nprocessors.o common.o common.o nprocessors.o: %.o: %.c $(CC) -c $(CPPFLAGS) $(CFLAGS_UNIPROC) $< -o $@ +.nprocessors.make: ./nprocessors + set -e; n=`./nprocessors`; \ + echo "NPROCCFLAGS := -DNPROCESSORS=$$n" $o + +include .nprocessors.make + + prime.data: primer ./$^ $o @@ -80,8 +86,9 @@ output-%: output+%.o mgraph+%.o common.o interpolate-%: interpolate+%.o mgraph+%.o common.o $(CC) $(CFLAGS) -o $@ $^ $(LIBGSL) -minimise-%: energy+%.o graph+%.o mgraph+%.o minimise+%.o half+%.o common.o - $(CXX) $(CXXFLAGS) -o $@ $^ $(LIBGSL) +minimise-%: energy+%.o graph+%.o mgraph+%.o minimise+%.o \ + half+%.o parallel.o common.o + $(CXX) $(CXXFLAGS) -o $@ $^ $(LIBGSL) -lpthread # this ridiculous repetition is due to make being too lame @@ -114,10 +121,10 @@ interpolate+%.o: interpolate.c clean: rm -f prime.data $(TARGETS) rm -f *.o *.new *.tmp *.rej *.orig core vgcore.* *~ - rm -f *.d *.cfm + rm -f *.d .alternately_* realclean: clean - rm -f *.CFM + rm -f *.cfm *.CFM %.d: