cpp_dirs := . .. cpp_path := $(foreach dir,$(cpp_dirs),-I$(dir)) # format for command line # Expand any tildes in directory names. Change spaces to colons. VPATH := $(foreach dir,$(cpp_dirs),$(wildcard $(dir))) VPATH := $(subst $(space),:,$(VPATH)) #VPATH := .:.. .SUFFIXES: .F90 .o .F .f90 AR := ar FC := xlf95 FFLAGS := -g -qfullpath -qmaxmem=-1 -O2 -qstrict -qsigtrap=xl__trcedump -Q -qinitauto=7FF7FFFF -qflttrap=ov:zero:inv:en -qspillsize=4000 -qarch=auto -qtune=auto -qsuffix=f=f90:cpp=F90 -I. -I.. -WF,-DHIDE_MPI LDFLAGS := OBJS := ESMF_AlarmMod.o ESMF_BaseTimeMod.o ESMF_ClockMod.o ESMF_TimeMod.o \ MeatMod.o ESMF_BaseMod.o ESMF_CalendarMod.o ESMF_FractionMod.o \ ESMF_TimeIntervalMod.o ESMF_Stubs.o ESMF.o ESMF_ShrTimeMod.o \ ESMF_AlarmClockMod.o wrf_stuff.o test: libesmf_time.a test.o $(FC) $(LDFLAGS) -o test test.o -L. -lesmf_time lib: libesmf_time.a debug: $(OBJS) echo "VPATH : $VPATH" echo "OBJS : $OBJ" echo "FFLAGS: $FFLAGS" libesmf_time.a : $(OBJS) \rm -f libesmf_time.a $(AR) $(ARFLAGS) libesmf_time.a $(OBJS) .F90.o : $(FC) -c $(FFLAGS) $< clean: /bin/rm -f *.o libesmf_time.a *.mod test # DEPENDENCIES : only dependencies after this line #$$$ update dependencies! ESMF_BaseMod.o : ESMF_BaseMod.F90 wrf_stuff.o ESMF_FractionMod.o: ESMF_FractionMod.F90 MeatMod.o : MeatMod.F90 ESMF_BaseMod.o ESMF_BaseTimeMod.o : ESMF_BaseTimeMod.F90 ESMF_BaseMod.o ESMF_CalendarMod.o : ESMF_CalendarMod.F90 ESMF_BaseMod.o ESMF_BaseTimeMod.o ESMF_Stubs.o : ESMF_Stubs.F90 ESMF_CalendarMod.o ESMF_BaseMod.o ESMF_ShrTimeMod.o : ESMF_ShrTimeMod.F90 ESMF_CalendarMod.o ESMF_BaseTimeMod.o ESMF_BaseMod.o ESMF_TimeIntervalMod.o : ESMF_TimeIntervalMod.F90 ESMF_FractionMod.o ESMF_TimeMod.o : ESMF_TimeMod.F90 ESMF_ShrTimeMod.o ESMF_Stubs.o ESMF_TimeIntervalMod.o ESMF_AlarmMod.o : ESMF_AlarmMod.F90 ESMF_BaseTimeMod.o ESMF_TimeMod.o ESMF_TimeIntervalMod.o ESMF_ClockMod.o : ESMF_ClockMod.F90 ESMF_BaseTimeMod.o ESMF_TimeMod.o ESMF_TimeIntervalMod.o ESMF_AlarmMod.o ESMF_AlarmClockMod.o : ESMF_AlarmClockMod.F90 ESMF_AlarmMod.o ESMF_ClockMod.o ESMF_TimeIntervalMod.o ESMF_TimeMod.o ESMF.o : ESMF.F90 ESMF_AlarmMod.o ESMF_BaseTimeMod.o ESMF_ClockMod.o ESMF_TimeMod.o \ ESMF_BaseMod.o ESMF_CalendarMod.o ESMF_FractionMod.o ESMF_ShrTimeMod.o \ ESMF_TimeIntervalMod.o ESMF_Stubs.o ESMF_AlarmClockMod.o test.o : test.F90 ESMF.o