# 
# This file is part of the SIESTA package.
#
# Copyright (c) Fundacion General Universidad Autonoma de Madrid:
# E.Artacho, J.Gale, A.Garcia, J.Junquera, P.Ordejon, D.Sanchez-Portal
# and J.M.Soler, 1996- .
# 
# Use of this software constitutes agreement with the full conditions
# given in the SIESTA license, as signed by all legitimate users.
#
.SUFFIXES:
.SUFFIXES: .f .F .o .a .f90 .F90

SIESTA_ARCH=Intel_composer_xe_2011_sp1.9.293+OpenMPI(1.4.5)@SUSE-10.2_X86-64

FPP=
FPP_OUTPUT= 
FC=mpif90
RANLIB=ranlib

SYS=nag

SP_KIND=4
DP_KIND=8
KINDS=$(SP_KIND) $(DP_KIND)

FFLAGS= -O3 -i-static
FFLAGS_DEBUG= -g
#LDFLAGS=-Vaxlib
#for Transieta compilation choose
FPPFLAGS= -DFC_HAVE_FLUSH -DFC_HAVE_ABORT -DMPI -DGRID_DP -DPHI_GRID_SP
#for SIESTA compilation choose
#FPPFLAGS= -DFC_HAVE_FLUSH -DFC_HAVE_ABORT -DMPI  -DCDF  -DGRID_DP -DPHI_GRID_SP
INCFLAGS=$(NETCDF_INCLUDE)

ARFLAGS_EXTRA=

FCFLAGS_fixed_f=
FCFLAGS_free_f90=
FPPFLAGS_fixed_F=
FPPFLAGS_free_F90=

BLAS_LIBS=-L/home/zhanggp/intel/composer_xe_2011_sp1.9.293/mkl/lib/intel64 -lmkl_solver_lp64 -lmkl_intel_lp64
LAPACK_LIBS=-L/home/zhanggp/intel/composer_xe_2011_sp1.9.293/mkl/lib/intel64 -lmkl_sequential -lmkl_core
BLACS_LIBS=-L/home/zhanggp/intel/composer_xe_2011_sp1.9.293/mkl/lib/intel64 -lmkl_blacs_openmpi_lp64
SCALAPACK_LIBS=-L/home/zhanggp/intel/composer_xe_2011_sp1.9.293/mkl/lib/intel64 -lmkl_scalapack_lp64

COMP_LIBS=

#NETCDF_LIBS=-L/usr/local/software/netcdf-3.6.3/lib -lnetcdf
#NETCDF_INCLUDE=-I/usr/local/software/netcdf-3.6.3/include
#DEFS_CDF=-DCDF
#NETCDF_INTERFACE=

LIBS=$(SCALAPACK_LIBS) $(BLACS_LIBS) $(LAPACK_LIBS) $(BLAS_LIBS) $(NETCDF_LIBS)

#SIESTA needs an F90 interface to MPI
#This will give you SIESTA's own implementation
#If your compiler vendor offers an alternative, you may change
#to it here.
MPI_INTERFACE= libmpi_f90.a
MPI_INCLUDE=/home/zhanggp/software/openmpi-1.4.5/include

#Dependency rules are created by autoconf according to whether
#discrete preprocessing is necessary or not.
.F.o:
	$(FC) -c $(FFLAGS) $(INCFLAGS) $(FPPFLAGS) $(FPPFLAGS_fixed_F)  $< 
.F90.o:
	$(FC) -c $(FFLAGS) $(INCFLAGS) $(FPPFLAGS) $(FPPFLAGS_free_F90) $< 
.f.o:
	$(FC) -c $(FFLAGS) $(INCFLAGS) $(FCFLAGS_fixed_f)  $<
.f90.o:
	$(FC) -c $(FFLAGS) $(INCFLAGS) $(FCFLAGS_free_f90)  $<

