.mod=.mod .fh=.fh .SUFFIXES: .f90 $(.mod) .F90 .F ####################### Section 1 ####################### # Define your compilers and compiler flags here # ########################################################## F90=/usr/local/bin/g95 FC=/usr/local/bin/g95 F77=$(FC) F90COPT= -O3 FCOPT=-O3 CCOPT=-O3 # # Which flag does your compiler use for module inclusion? # Most compilers use -I but Sun uses -M # FIFLAG is for INCLUDE FMFLAG=-I FIFLAG=-I ####################### Section 2 ####################### # Define your linker and linker flags here # # Does your MPI provide mpi.mod or mpif.h? # # MPI_FINC=-DMPI_H or MPI_FINC=-DMPI_MOD # # If necessary add MPIINCDIR # ########################################################## F90LINK=/usr/local/mpich-g95/bin/mpif90 FLINK=/usr/local/mpich-g95/bin/mpif77 MPF90=/usr/local/mpich-g95/bin/mpif90 MPF77=/usr/local/mpich-g95/bin/mpif77 MPCC=/usr/local/mpich-g95/bin/mpicc MPI_FINC=-DMPI_MOD #$(FIFLAG)/opt/SUNWhpc/include ####################### Section 3 ####################### # Specify paths to libraries # ########################################################## BLAS=-lblasg95 -L$(HOME)/LIB BLACS=-lmpiblacsg95 -L$(HOME)/LIB ####################### Section 4 ####################### # Other useful tools&defines # # SLU and UMF need only be set when using MLD2P4 # ########################################################## #SLUDIR=/usr/local/SuperLU_3.0 #SLU=-lslu_lx_gfort -L$(SLUDIR) #SLUDEF=-DHave_SLU_ -I$(SLUDIR) #UMFDIR=$(HOME)/LIB/Umfpack_gcc41 #UMF=-lumfpack -lamd -L$(UMFDIR) #UMFDEF=-DHave_UMF_ -I$(UMFDIR) # Add -DLargeFptr for 64-bit addresses CDEFINES=-DAdd_ $(SLUDEF) $(UMFDEF) FDEFINES=-DNETLIB_BLACS $(MPI_FINC) -DHAVE_MOVE_ALLOC AR=ar -cur RANLIB=ranlib ####################### Section 5 ####################### # Do not edit this # ########################################################## LIBDIR=lib BASELIBNAME=libpsb_base.a PRECLIBNAME=libpsb_prec.a METHDLIBNAME=libpsb_krylov.a UTILLIBNAME=libpsb_util.a # Under Linux/gmake there is a rule interpreting .mod as Modula source! $(.mod).o: .c.o: $(CC) $(CCOPT) $(CINCLUDES) $(CDEFINES) -c $< .f.o: $(FC) $(FCOPT) $(FINCLUDES) -c $< .f$(.mod): $(FC) $(FCOPT) $(FINCLUDES) -c $< .f90$(.mod): $(F90) $(F90COPT) $(FINCLUDES) -c $< .f90.o: $(F90) $(F90COPT) $(FINCLUDES) -c $< .F.o: $(FC) $(FCOPT) $(FINCLUDES) $(FDEFINES) -c $< .F90.o: $(F90) $(F90COPT) $(FINCLUDES) $(FDEFINES) -c $< .F90$(.mod): $(F90) $(F90COPT) $(FINCLUDES) $(FDEFINES) -c $<