1MPIDIR = @mpidir@ 2MPIBINDIR = @mpibindir@ 3MPILIBDIR = @mpilibdir@ 4MPIINCDIR = @mpiincdir@ 5MPILIBS = @mpilibs@ 6 7PREFIX = @prefix@ 8BINDIR = @bindir@ 9LIBDIR = @libdir@ 10INCLUDEDIR = @includedir@ 11 12HECMWBINDIR = ../../../bin 13HECMWLIBDIR = ../../../lib 14HECMWINCDIR = ../../../include 15HECMWLIBS = @hecmwlibs@ 16 17REFINERDIR = @refinerdir@ 18REFINERINCDIR = @refinerincdir@ 19REFINERLIBDIR = @refinerlibdir@ 20REFINERLIBS = @refinerlibs@ 21 22MKLDIR = @mkldir@ 23MKLLIBDIR = @mkllibdir@ 24MKLINCDIR = @mklincdir@ 25MKLLIBS = @mkllibs@ 26MKL_CFLAGS = @mkl_cflags@ 27MKL_LDFLAGS = @mkl_ldflags@ 28MKL_F90FLAGS = @mkl_f90flags@ 29MKL_F90LDFLAGS = @mkl_f90ldflags@ 30 31CC = @cc@ 32CFLAGS = @cflags@ 33BASE_CFLAGS = @base_cflags@ 34MPI_CFLAGS = @mpi_cflags@ 35HECMW_CFLAGS = @hecmw_cflags@ 36ALL_CFLAGS = $(BASE_CFLAGS) $(HECMW_CFLAGS) $(MKL_CFLAGS) $(MPI_CFLAGS) $(CFLAGS) 37LDFLAGS = @ldflags@ 38MPI_LDFLAGS = @mpi_ldflags@ 39HECMW_LDFLAGS = @hecmw_ldflags@ 40ALL_LDFLAGS = $(HECMW_LDFLAGS) $(MKL_LDFLAGS) $(MPI_LDFLAGS) $(LDFLAGS) 41OPTFLAGS = @optflags@ 42 43F90 = @f90@ 44F90FLAGS = @f90flags@ 45BASE_F90FLAGS = @base_f90flags@ 46MPI_F90FLAGS = @mpi_f90flags@ 47HECMW_F90FLAGS = @hecmw_f90flags@ 48ALL_F90FLAGS = $(BASE_F90FLAGS) $(HECMW_F90FLAGS) $(MKL_F90FLAGS) $(MPI_F90FLAGS) $(F90FLAGS) 49F90LDFLAGS = @f90ldflags@ 50MPI_F90LDFLAGS = @mpi_f90ldflags@ 51HECMW_F90LDFLAGS = @hecmw_f90ldflags@ 52ALL_F90LDFLAGS = $(HECMW_F90LDFLAGS) $(MKL_F90LDFLAGS) $(MPI_F90LDFLAGS) $(F90LDFLAGS) 53F90FPP = @f90fpp@ 54F90OPTFLAGS = @f90optflags@ 55 56AR = @ar@ 57CP = @cp@ 58RM = @rm@ 59RANLIB = @ranlib@ 60MKDIR = @mkdir@ 61 62#-----------------------------------------------------------------------------# 63TARGET = @hecmwlib_targetfile@ 64F90TARGET = @hecmwlib_f90targetfile@ 65 66F90MODULEPOSTFIX = @f90modulepostfix@ 67COBJFILEPOSTFIX = @cobjfilepostfix@ 68F90OBJFILEPOSTFIX = @f90objfilepostfix@ 69 70#-----------------------------------------------------------------------------# 71.SUFFIXES: 72.SUFFIXES: .@cobjfilepostfix@ @f90objfilepostfix@ .c .f90 .F90 .f 73 74.c.@cobjfilepostfix@: 75 $(CC) -c $< $(ALL_CFLAGS) $(OPTFLAGS) 76 77.f90.@f90objfilepostfix@: 78 $(F90) -c $< $(ALL_F90FLAGS) $(F90OPTFLAGS) 79 80.F90.@f90objfilepostfix@: 81 $(F90) -c $< $(ALL_F90FLAGS) $(F90FPP) $(F90OPTFLAGS) 82 83.f.@f90objfilepostfix@: 84 $(F90) -c $< $(ALL_F90FLAGS) $(F90OPTFLAGS) 85 86#-----------------------------------------------------------------------------# 87OBJS = 88 89OBJSF = \ 90 hecmw_MKL_wrapper.@f90objfilepostfix@ \ 91 hecmw_solver_direct_MKL.@f90objfilepostfix@ 92 93HEADERS = 94 95#-----------------------------------------------------------------------------# 96all: @build_target_mkl@ 97 98build-default: $(TARGET) $(F90TARGET) install-module 99 100build-without-f: $(TARGET) 101 102$(TARGET): $(OBJS) 103 $(AR) $(HECMWLIBDIR)/$@ $(OBJS) 104 105$(F90TARGET): $(OBJSF) 106 $(AR) $(HECMWLIBDIR)/$@ $(OBJSF) 107 108$(OBJS): $(HEADERS) 109 110$(OBJSF): 111 112install-header: $(HEADERS) 113 $(CP) $(HEADERS) $(HECMWINCDIR)/. 114 115install-module: 116 $(CP) *.$(F90MODULEPOSTFIX) $(HECMWINCDIR)/. 117 118install: 119 120clean: 121 $(RM) *.$(COBJFILEPOSTFIX) *.$(F90OBJFILEPOSTFIX) *.$(F90MODULEPOSTFIX) 122 123distclean: clean 124