# THIS IS AN EXAMPLE FOR INTEL-LINUX PLATFORMS RUNNING PGF COMPILERS. CUSTOMIZE! .SUFFIXES: .inc .f .F MAKE = /usr/bin/make CPP = /usr/bin/cpp -C -P $*.F > $*.f FC = /usr/local/pgi/linux86/bin/pgf90 -Mfree DEBUG = -tp p6 -O1 -Mnoframe -byteswapio -Mi4 -Mcache_align -Mdalign -pc 64 OFLAG = -tp p6 -O2 -Munroll -Mnoframe -byteswapio -Mi4 -Mcache_align -Mdalign -pc 64 DOUBLE = -r8 SINGLE = TIMING = #TIMING = -pg # binding BIND = LIB = -L../../vasp.4.4.lib/sources -ldmy4 -L/usr/local/lib -llapack64 -lblas #----------------------------------------------------------------------- # these are the rules and compile lines used on the IBM system #----------------------------------------------------------------------- ALLPROGS = optics SCRIPTS = all: (cd .. ; $(MAKE) ; cd optics) $(MAKE) $(ALLPROGS) optics: optics.o $(FC) $(BIND) -o optics ../prec.o ../constant.o ../error.o ../tet.o ../smear.o optics.o $(LIB) optics.o: optics.F $(CPP) $(FC) $(SINGLE) $(OFLAG) -Minline=name:KRAMERS -c $*.f rm -f $*.f .F.o: $(CPP) $(FC) $(SINGLE) $(OFLAG) -c $*.f rm -f $*.f .F.f: $(CPP) .f.o: $(FC) $(SINGLE) $(OFLAG) -c $*.f binlinks:: for executable in $(ALLPROGS); do \ ( rm -f $(HOME)/bin/$$executable; \ ln -s $(HOME)/src/vasp-f90/utilities/optics/$$executable $(HOME)/bin/$$executable ) \ done for executable in $(SCRIPTS); do \ ( rm -f $(HOME)/bin/$$executable; \ ln -s $(HOME)/src/vasp-f90/utilities/optics/scripts/$$executable $(HOME)/bin/$$executable ) \ done clean:: rm -f *.o *.mod $(ALLPROGS) core ln -s ../prec.mod . ln -s ../constant.mod . cleanlinks:: for executable in $(ALLPROGS) $(SCRIPTS); do \ ( rm -f $(HOME)/bin/$$executable ) \ done