# # Define the name of the executable # TARGET = sref_bufr # # CPP, Compiler, and Linker Options # FC = $(COMP_MPI) CPP = /lib/cpp -P ARCH = CPPFLAGS = #OPTS = -O3 -assume byterecl -convert big_endian OPTS = -O0 -convert big_endian LIST = FREE = -FR #TRAPS = -g -traceback -debug all -check all -O0 -ftrapuv -fpe0 -fp-stack-check -fstack-protector TRAPS = -g -traceback PROFILE = DEBUG = MEM = MAP = ESSL = MASS = #W3FLAGS = -I/nwprod/lib NEMSIOFLAG = -I$(NEMSIO_INC) NETCDF_LIB = ${NETCDF}/lib/libnetcdf.a WRFFLAGS = -I$(WRFPATH)/frame WRFLIB = $(WRFPATH)/frame/pack_utils.o \ $(WRFPATH)/frame/module_internal_header_util.o \ $(WRFPATH)/main/libwrflib.a \ $(WRFPATH)/external/io_grib1/libio_grib1.a \ $(WRFPATH)/external/io_grib_share/libio_grib_share.a \ $(WRFPATH)/external/io_int/libwrfio_int.a \ $(WRFPATH)/external/io_netcdf/libwrfio_nf.a \ $(WRFPATH)/external/esmf_time_f90/libesmf_time.a \ $(WRFPATH)/external/RSL_LITE/librsl_lite.a SEARCH = # ## Assemble Options # FFLAGS = $(OPTS) $(LIST) $(TRAPS) $(PROFILE) $(DEBUG) $(WRFFLAGS) $(W3FLAGS) $(NEMSIOFLAG) FFLAGST = $(OPTS) $(LIST) $(FREE) $(TRAPS) $(PROFILE) $(DEBUG) $(WRFFLAGS) $(W3FLAGS) $(NEMSIOFLAG) LDFLAGS = $(MEM) $(MAP) $(SMP) $(PROFILE) LIBS = $(ESSL) $(MASS) $(SEARCH) $(WRFLIB) \ ${NEMSIO_LIB} ${W3EMC_LIB4} ${W3NCO_LIB4} \ ${BACIO_LIB4} $(NETCDF_LDFLAGS_F) $(NETCDF_LDFLAGS_C) # # free-format object files # OBJST= getIVariableB.o getIVariable.o getVariableB.o getVariable.o \ kinds_mod.o \ count_recs_wrf_binary_file.o inventory_wrf_binary_file.o \ next_buf.o retrieve_index.o GETNEMSANDPLACE.o # # fixed-format object files # OBJS= VRBLS2D_mod.o VRBLS3D_mod.o MASKS_mod.o SOIL_mod.o \ WRFBUFR.o PROF_EM.o PROF_NMM.o PROF_NMM_NET.o PROF_EM_NET.o PROF_NMMB.o \ iw3jdn.o w3fs26.o w3movdat.o w3reddat.o gdswiz.o gdswiz01.o \ gdswiz03.o gdswiz05.o # # Includes # INCLUDES= parmsoil # # Common Blocks # COMMS= DEPS= $(COMMS) $(INCLUDES) .SUFFIXES: .F .f .o .F.f: $(CPP) $(CPPFLAGS) $< > $*.f $(TARGET): $(OBJST) $(OBJS) $(FC) $(LDFLAGS) -o $@ $(OBJST) $(OBJS) $(LIBS) $(OBJS): $(DEPS) $(FC) $(FFLAGS) -c $(@:.o=.f) $(OBJST): $(DEPS) $(FC) $(FFLAGST) -c $(@:.o=.f) clean: /bin/rm -f $(TARGET) *.lst *.o *.mod #