################################################################### ## A makefile for MIT Global Climate and Biogeochemistry Model ## ## --------------------- ## ## Chien Wang, July 31, 1995 ## ## MIT Joint Program for Global Change ## ################################################################### ## ## === Define files ## TARGET = $(LIBDIR)LIBATM.a MAKELIB = TRUE PLATFORM = Linux # --- Source files #JRS removed ocean_rd.F and driver.F FILES = atmosphere.F check_settings.F chemglobal.F chemtemco2.F \ comp1.F condse.F daily_new.F daily_ocean.F \ drycnv.F eddypa.F fft36.F fltr4tem.F forcedozone.F \ forset.F gr_for_3docean.F grland.F grocean.F \ hordiff_all.F hordiff.F input.F \ md2g04.F mesh.F newcon.F obsco2.F obso3.F \ obssolar.F ocean4atm.F \ prland.F surf_ocean.F climate2tem.F zclimate2tem.F \ sur4clm.F surf_land.F surf_clm.F gr_clm.F \ r95mit.F radia0.F radia_chem.F radia.F \ radiagso.F rd_ocean4atmrst.F readSTAER.F rtgases.F \ bgrghg.F sdrag.F senint.F sulfut.F surface.F \ t2m.F tgases.F trends4_igsm.F trends_giss.F trvdata.F \ vfunct.F \ vweigav.F wr_ocean4atmrst.F \ check_lib.F dd2g04.F util.F INCDIR := ../inc/ LIBDIR := ./ # --- include files INCFILE1 = $(INCDIR)ctrparam.h ## ## === Compile, link and execute sectio: ## # --- for Digital UNIX ifeq ($(PLATFORM),OSF1) FFLAGS = -O -cpp -I$(INCDIR) -non_shared -om -real_size 64 -integer_size 32 FFLAGS2= $(FFLAGS) CC = f90 endif # --- for PGI/LINUX ifeq ($(PLATFORM),Linux) #FFLAGS = -I$(INCDIR) -fast -r8 -i4 -Mdalign -Msave ifeq ($(MAKELIB),TRUE) FFLAGS = -I$(INCDIR) -r8 -i4 -c -Mdalign -Msave else FFLAGS = -I$(INCDIR) -r8 -i4 -Mdalign -Msave endif CC = /usr/local/pkg/pgi/pgi-6.1-5/linux86/6.1/bin/pgf90 endif #LIBS = $(LIBDIR)GACM64.a #LIBC = $(LIBDIR)LIBCHEM.a #LIBM = $(LIBDIR)LIBMETA.a #LIBCLM = $(LIBDIR)LIBCLM.old.a #LIBCLM = $(LIBDIR)LIBCLM.032706.a #LIBTEM = $(LIBDIR)LIBTEM.a #LIBNCDF= /usr/local/netcdf-3.5.1-beta13/lib/libnetcdf.a ifeq ($(CHEM),TRUE) LIBS:= $(LIBS) $(LIBC) endif ifeq ($(META),TRUE) LIBS:= $(LIBS) $(LIBM) endif ifeq ($(CLM),TRUE) LIBS:= $(LIBS) $(LIBCLM) $(LIBDIR)libesmf.a $(LIBDIR)libmpiuni.a LIBS:= $(LIBS) $(LIBNCDF) endif ifeq ($(TEM),TRUE) LIBS:= $(LIBS) $(LIBTEM) endif OBJECT =atmosphere.o check_settings.o chemglobal.o chemtemco2.o \ comp1.o condse.o daily_new.o daily_ocean.o \ drycnv.o eddypa.o fft36.o fltr4tem.o forcedozone.o \ forset.o gr_for_3docean.o grland.o grocean.o \ hordiff_all.o hordiff.o input.o \ md2g04.o mesh.o newcon.o obsco2.o robso3.o \ obssolar.o ocean4atm.o \ prland.o surf_ocean.o climate2tem.o zclimate2tem.o \ sur4clm.o surf_land.o surf_clm.o gr_clm.o \ r95mit.o radia0.o radia_chem.o radia.o \ radiagso.o rd_ocean4atmrst.o readSTAER.o rtgases.o \ bgrghg.o sdrag.o senint.o sulfut.o surface.o \ t2m.o tgases.o trends_igsm.o trends_giss.o trvdata.o \ vfunct.o \ vweigav.o wr_ocean4atmrst.o \ check_lib.o dd2g04.o util.o ## ## === Assign dependencies: ## ifeq ($(MAKELIB),TRUE) ALL: $(TARGET) $(TARGET): $(OBJECT) ar vru $(TARGET) $(OBJECT) ranlib $(TARGET) .F.o: $(CC) $(FFLAGS) $< else LIB3DO = $(LIBDIR)LIB3DO_DICSS.a LIB3DO = $(LIBDIR)LIB3DOCEAN.a LIBS:= $(LIBS) $(LIB3DO) ALL: $(OBJECT) $(INCFILE1) $(INCFILES2) $(INCFILES3) $(INCFILES4) $(CC) $(FFLAGS) $(OBJECT) -o mod.out $(LIBS) $(LFLAGCC) OBJECT: $(INCFILE1) $(INCFILES2) $(INCFILES3) $(INCFILES4) .F.o: $(CC) -c $(FFLAGS) $< endif #clean: # rm -f ./*.o ../fort.*