# System-dependent Make definitions for Linux, Intel compiler # Edit according to your needs .SUFFIXES : .SUFFIXES : .o .c .f .f90 .f90.o: $(F90) $(F90FLAGS) -c $< .f.o: $(F77) $(FFLAGS) -c $< .c.o: $(CC) $(CFLAGS) -c $< # Add -DADD_BLAS_ONE_UNDERSCORE to CPPFLAGS if your blas/lapack library # names contain two underscores at the end ## Use precompiled fftw library (version <= 2.1.5, NOT v.3!) ## In this case, specify also how to load the fftw library (FFTW_LIB) ## and the path to the fftw.h include file (FFTW_INC_DIR). Example: # FFTW_LIB = -L/usr/local/src/fftw-2.1.3/fftw/.libs -lfftw # FFTW_INC_DIR = /usr/local/src/fftw-2.1.3/fftw # CPPFLAGS = -D__LINUX -D__INTEL -D__FFTW -I../include -I$(FFTW_INC_DIR) # Use the local copy of fftw CPPFLAGS = -D__LINUX -D__INTEL -D__FFTW -D__USE_INTERNAL_FFTW \ -I../include -I. \ -I/Developer/SDKs/MacOSX10.4u.sdk/usr/include/malloc CC = icc MPICC = icc F90 = ifort MPIF90 = ifort F77 = ifort MPIF77 = ifort # Fortran compiler flags # -Vaxlib enables the use of portability libraries (getarg # and maybe other library calls) # -W0 disable warnings # -O3 more aggressive optimization # -tpp5 Pentium optimization # -tpp6 Pentium Pro, 2, 3 optimization # -tpp7 Pentium 4 optimization FFLAGS = -Vaxlib -O3 -tpp7 #FFLAGS = $(FFLAGS_NOOPT) ## use this for version < 7 # F90FLAGS = $(FFLAGS) -fpp $(CPPFLAGS) -cl,./intel.pcl # use this for version = 7 F90FLAGS = $(FFLAGS) -fpp $(CPPFLAGS) -nomodule \ -I../Modules -I../PW -I../PH -I../iotk/src -I../CPV FFLAGS_NOOPT = -O0 CFLAGS = $(CPPFLAGS) -O3 -fomit-frame-pointer # The following is for Intel MKL libraries v. 5.1 on Pentium-3 # Use libmkl_p3.a for Pentium-3 and Athlon CPUs # Use libmkl_p4.a for Pentium-4 and Opteron CPUs LIBS = $(FFTW_LIB) \ -L/Library/Frameworks/Intel_MKL.framework/Libraries/32 \ -lmkl_lapack -lmkl_ia32 -lguide ## For MKL v. 5.2 add "-lguide" ## For MKL v. 6 use # LIBS = $(FFTW_LIB) -L/opt/intel/mkl/lib/32/ \ # -lmkl_lapack -lmkl_ia32 -lguide -lpthread MYLIB = lapack_mkl ## The following is for Atlas optimized blas/lapack libraries ## You may not actually need -lcblas . See the manual for details ## on how to fix I/O incompatibility problems with ifc # LIBS = $(FFTW_LIB) -L$(HOME)/Linux_ATHLON256/ \ # -llapack -lf77blas -lcblas -latlas ## The following is to use blas and lapack from the source code # MYLIB = blas_and_lapack LD = $(MPIF90) LDFLAGS = ../flib/ptools.a ../flib/flib.a ../clib/clib.a \ ../iotk/src/libiotk.a -Vaxlib AR = ar ARFLAGS = ruv RANLIB = echo