# System-dependent definitions for Mac OS-X - Contributed by Stefano Baroni # xlf compiler, veclib framework (optimized blas and lapack for mac) # edit according to your needs .SUFFIXES : .SUFFIXES : .o .c .f .f90 .f90.o: $(MPIF90) $(F90FLAGS) -c $< .f.o: $(F77) $(FFLAGS) -c $< .c.o: $(CC) $(CFLAGS) -c $< CC = gcc MPICC = gcc CFLAGS = -O3 -fomit-frame-pointer -I/usr/include/malloc $(DFLAGS) $(IFLAGS) CPP = cpp CPPFLAGS = -P -traditional $(DFLAGS) $(IFLAGS) F90 = xlf90 MPIF90 = xlf90 F90FLAGS = $(FFLAGS) -qfree=f90 -WF,$(FDFLAGS) $(IFLAGS) $(MODFLAGS) F90FLAGS_NOOPT = $(FFLAGS_NOOPT) -qfree=f90 -WF,$(FDFLAGS) $(IFLAGS) $(MODFLAGS) F77 = xlf MPIF77 = xlf FFLAGS = -O2 -qarch=auto -qtune=auto -qsuffix=cpp=f90 -qdpc -qalias=nointptr # higher optimizations -O3 and -O4 may yield problems FFLAGS_NOOPT = -O0 LD = xlf90 LDFLAGS = AR = ar ARFLAGS = ruv RANLIB = ranlib BLAS_LIBS = -Wl,-framework -Wl,vecLib LAPACK_LIBS = FFT_LIBS = MPI_LIBS = MASS_LIBS = # ----------------------------- # application-specific settings # See include/defs.h.README for a list of precompilation options # (possible arguments to -D or -U) and their meaning DFLAGS = -D__MAC -D__XLF -D__FFTW -D__USE_INTERNAL_FFTW FDFLAGS = -D__MAC,-D__XLF,-D__FFTW,-D__USE_INTERNAL_FFTW IFLAGS = -I../include MODFLAGS = -I. -I../Modules -I../PW -I../PH -I../iotk/src LIBOBJS = ../flib/ptools.a ../flib/flib.a ../clib/clib.a ../iotk/src/libiotk.a # LIBS must contain the location of all needed external libraries LIBS = ../flib/blas_mac.o $(LAPACK_LIBS) $(BLAS_LIBS) $(FFT_LIBS) $(MPI_LIBS) $(MASS_LIBS) -lSystemStubs # MYLIB can be one of the following (depending on LIBS): # blas : compile the local copy of blas routines # lapack : compile the local copy of lapack routines # blas_and_lapack : all of the above - use this for a quick test # or if you don't have an optimized blas/lapack library # lapack_ibm : compile only lapack routines not present in IBM ESSL # use this together with IBM ESSL # lapack_t3e : compile only lapack routines not present in T3E scilib # use this together with T3E scilib # lapack_mkl : compile only lapack routines not present in Intel MKL # use this together with Intel MKL MYLIB = blas_mac.o