SHELL = /bin/sh # Listing of options that are usually independent of machine type. # When necessary, these are over-ridden by each architecture. ARFLAGS = -X64 #### Architecture specific settings #### # Settings for Linux x86_64, Intel compiler, CrayPE (dmpar)# NETCDF = /apps/prod/hpc-stack/intel-19.1.3.304/cray-mpich-8.1.4/netcdf/4.7.4 NETCDFINC = -I/apps/prod/hpc-stack/intel-19.1.3.304/cray-mpich-8.1.4/netcdf/4.7.4/include NETCDFLIB = -L/apps/prod/hpc-stack/intel-19.1.3.304/cray-mpich-8.1.4/netcdf/4.7.4/lib -lnetcdff -lnetcdf -lz -L/apps/prod/hpc-stack/intel-19.1.3.304/cray-mpich-8.1.4/hdf5/1.10.6/lib -lhdf5_hl -lhdf5hl_fortran -lhdf5 -lhdf5_fortran -lz PNETCDF = /apps/prod/pnetcdf/1.12.2/intel/19.1.3.304/cray-mpich/8.1.4 LDFLAGS = -Wl,-noinhibit-exec -L$(MPI_ROOT)/lib LIB_G2_PATH = /lfs/h1/ops/prod/packages/hwrf.v13.2.1/sorc/hwrf_pomtc.fd/../../libs LIB_JASPER_PATH= /apps/spack/jasper/2.0.25/intel/19.1.3.304/sjib74krrorkyczqpqah4tvewmlnqdx4 LIB_PNG_PATH = /usr/lib64 LIB_Z_PATH = /apps/spack/zlib/1.2.11/intel/19.1.3.304/hjotqkckeoyt6j6tibalwzrlfljcjtdh/lib LIB_NEMSIO_PATH= /lfs/h1/ops/prod/packages/hwrf.v13.2.1/sorc/hwrf_pomtc.fd/../../libs LIB_BACIO_PATH = /lfs/h1/ops/prod/packages/hwrf.v13.2.1/sorc/hwrf_pomtc.fd/../../libs LIB_W3_PATH = /lfs/h1/ops/prod/packages/hwrf.v13.2.1/sorc/hwrf_pomtc.fd/../../libs LIB_SP_PATH = /lfs/h1/ops/prod/packages/hwrf.v13.2.1/sorc/hwrf_pomtc.fd/../../libs LIB_SFCIO_PATH = /lfs/h1/ops/prod/packages/hwrf.v13.2.1/sorc/hwrf_pomtc.fd/../../libs LIB_BLAS_PATH = /lfs/h1/ops/prod/packages/hwrf.v13.2.1/sorc/hwrf_pomtc.fd/../../libs BYTE_ORDER = LITTLE_ENDIAN SFC = ftn SF90 = ftn -free SCC = cc OMP_FFLAGS = -openmp FFLAGS = -O2 -fp-model precise -assume byterecl -convert big_endian \ -I$(MPI_ROOT)/include # $(DEBUG_FFLAGS) FFLAGS_MPI_POM = -O1 -fp-model precise \ -I$(MPI_ROOT)/include # $(DEBUG_FFLAGS) DEBUG_FFLAGS = -g -traceback -ftz -fpe0 CPP = /lib/cpp CPPFLAGS = -P -traditional -D$(BYTE_ORDER) -DWRF DM_FC = ftn DM_F90 = ftn -free DM_CC = cc FC = $(DM_FC) F90 = $(DM_F90) CC = $(DM_CC) CFLAGS = -I$(MPI_ROOT)/include ESSLLIB = -L$(LIB_BLAS_PATH) -lblas -mkl MATHLIB = -lm ################################################################## # # Macros, these should be generic for all machines LN = ln -sf MAKE = make -i -r RM = /bin/rm -f CP = /bin/cp AR = ar MKDIR = /bin/mkdir -p .IGNORE: .SUFFIXES: .c .f .F .F90 .f90 .o # There is probably no reason to modify these rules .c.o: $(RM) $@ $(CC) $(CFLAGS2) -c $< .f.o: $(RM) $@ $*.mod $(FC) $(FFLAGS) -c $< .F.o: $(RM) $@ $*.mod $(CPP) $(CPPFLAGS) $(FDEFS) $< > $*.f90 $(F90) $(FFLAGS) -c $*.f90 $(RM) $*.f90 .F90.o: $(RM) $@ $*.mod $(CPP) $(CPPFLAGS) $(FDEFS) $< > $*.f90 $(F90) $(FFLAGS) -c $*.f90 $(RM) $*.f90 .f90.o: $(RM) $@ $*.mod $(F90) $(FFLAGS) -c $<