#= Makefile for build of gt4f90io library in UNIX like platform # # Authors:: Eizi TOYODA (toyoda), Yasuhiro MORIKAWA (morikawa) # Version:: $Id: Makefile,v 1.38 2007/03/04 19:22:49 morikawa Exp $ # Tag Name:: $Name: gt4f90io-20070628 $ # Copyright:: Copyright (C) GFD Dennou Club, 2004-2007. All rights reserved. # License:: See COPYRIGHT[link:../../COPYRIGHT] # ###################################################################### # #== Settings # in Config.mk, DEST_LIB, DEST_INC is defined include ../Config.mk TARGET=lib$(LIBNAME).a OBJS_A = \ sysdepabort-$(SYSDEPABORT).o \ sysdeparg-$(SYSDEPARG).o \ sysdepenv-$(SYSDEPENV).o \ dc_test.o \ regex.o \ dcstringbase_warnlim.o \ dcstringsprintf.o dcstringfprintf.o dcstringcprintf.o \ dc_trace.o \ dc_string.o dc_types.o netcdf_f77.o sysdep.o \ dc_error.o dc_url.o dc_units.o dcunits_com.o \ dc_message.o dc_present.o \ dc_date_types.o dcdatetimecreate.o dcdatetimeeval.o \ dcdatetimesetcaltype.o dcdatetimesetsecofday.o \ dcdatetimevalidcaltype.o dcdatetimezone.o \ dcdatetimetochar.o dcdatetimeputline.o dc_date.o \ dc_clock.o \ dc_hash.o dc_args.o \ an_types.o an_generic.o an_file.o an_vartable.o \ anvarputattrchar.o anvarputattrint.o anvarputattrreal.o \ anvarattr.o anvarattrtrue.o anvarclose.o anvarcreate.o \ anvaropen.o \ anattrgetnum.o \ anattrgetchar.o \ anvardelattr.o anvarsearch.o anvarsync.o anvarcreated.o \ anattrinquire.o anvarattrcopy.o \ anvarinquire.o \ anvarinquire-ia.o \ anvaropenbydimord.o anvartostring.o \ anattrinquire.o \ anxtypename.o \ anvargetnum.o \ anvarputnum.o \ ansearchdim.o OBJS_D = $(OBJS_A) \ gt_mem.o \ gt_vartable.o \ gtdata_types.o \ gtdata_generic.o \ gtdata_internal.o \ gt_vartable.o \ gt_map.o \ gtvardeldim.o \ gtvaradddim.o \ gtvarexchdim.o \ gtdim_name2ord.o \ gtdatatmpnam.o \ gtvargetattrsc.o \ gtvarsync.o \ gtvargetslice.o \ gtvarcopyattr.o \ gtvarcopyattrall.o \ gtvarcreatecopy.o \ gtvargetattr.o \ gtvarattrtrue.o \ gtvardelattr.o \ gtvarputattrchar.o \ gtvaraddmember.o \ gtvaropen.o \ gtvarclose.o \ gtvaropenbydimord.o \ gtvarcreate.o \ gtvarslice.o \ gtvarslicenext.o \ gtvarcreate.o \ gtvarsliceauto.o \ gtvargetsliceall.o \ gtvarputline.o \ gtvarsearch.o \ gtvarattrsearch.o \ gtvargetnum.o \ gtvargetpointernum.o \ gtvarputnum.o \ gtvarinquire.o \ gtvarlimit.o \ gtvarlimitbinary.o \ gtvarcreated.o \ gtvarequivalent.o \ gt4f90io.o \ gt4_history.o \ historyget.o \ gt4_historyauto.o \ hscrea.o hsavar.o hsclse.o \ hsaatc.o hsaatr.o hsaatd.o hsaati.o \ hsp1r.o hsp2d.o hsp3d.o hsp1d.o hsp2r.o hsp3r.o OBJS = $(OBJS_D) RB2F90 = sysdepabort-abort.f90 \ sysdepabort-exit.f90 sysdepabort-stop.f90 \ sysdepabort-setrcd.f90 sysdepabort-errtra-setrcd.f90 \ sysdeparg-common.f90 sysdeparg-hitachi.f90 \ sysdepenv-common.f90 sysdepenv-nogetenv.f90 \ dc_test.f90 dc_string.f90 \ anattrgetnum.f90 anvargetnum.f90 gtdata_generic.f90 \ gtvargetpointernum.f90 gtvargetnum.f90 anvarputnum.f90 \ gtvarputnum.f90 dc_present.f90 \ gt4_history.f90 historyget.f90 # End Settings ###################################################################### ###################################################################### #== Rules # all: $(TARGET) install: $(TARGET) test -d $(DEST_LIB) || $(INSTALLDIR) $(DEST_LIB) test -d $(DEST_INC) || $(INSTALLDIR) $(DEST_INC) $(INSTALL) $(TARGET) $(DEST_LIB) $(RANLIB) $(DEST_LIB)/$(TARGET) $(INSTALL) $(MODS) $(MODINCS) $(DEST_INC) if [ X$(F90MODTYPE) = X"intel.d" ]; then \ $(INSTALL) work.pc $(DEST_INC)/work.pc ;\ fi doc: $(HTML) clean-doc: $(RM) $(HTML) $(OBJS): $(OBJS): work.pcl work.pcl: Makefile ../Config.mk sh ../chkpcl.sh $(SYSFFLAGS) an: $(OBJS_A) $(AR) $(ARFLAGS) $(TARGET) $(OBJS_A) $(RANLIB) $(TARGET) gtdata: $(OBJS_D) $(AR) $(ARFLAGS) $(TARGET) $(OBJS_D) $(RANLIB) $(TARGET) $(TARGET): $(RB2F90) $(OBJS) $(AR) $(ARFLAGS) $@ $(OBJS) $(RANLIB) $@ # #=== Files generated with ruby script # sysdepabort-abort.f90: sysdepabort.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< --aborttype=ABORT > $@ || \ touch $@ sysdepabort-exit.f90: sysdepabort.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< --aborttype=EXIT > $@ || \ touch $@ sysdepabort-stop.f90: sysdepabort.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< --aborttype=STOP > $@ || \ touch $@ sysdepabort-setrcd.f90: sysdepabort.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< --aborttype=SETRCD > $@ || \ touch $@ sysdepabort-errtra-setrcd.f90: sysdepabort.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< --aborttype=ERRTRA-SETRCD > $@ || \ touch $@ sysdeparg-common.f90: sysdeparg.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< --argtype=COMMON > $@ || \ touch $@ sysdeparg-hitachi.f90: sysdeparg.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< --argtype=HITACHI > $@ || \ touch $@ sysdepenv-common.f90: sysdepenv.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< --envtype=COMMON > $@ || \ touch $@ sysdepenv-nogetenv.f90: sysdepenv.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< --envtype=NOGETENV > $@ || \ touch $@ dc_test.f90: dc_test.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< --max_dim=$(MAXDIM) > $@ || \ touch $@ dc_string.f90: dc_string.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< > $@ || \ touch $@ anattrgetnum.f90: anattrgetnum.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< > $@ || \ touch $@ anvargetnum.f90: anvargetnum.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< > $@ || \ touch $@ gtdata_generic.f90: gtdata_generic.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< --gtvarget_dim=$(MAXDIM) --gtvarput_dim=$(MAXDIM) > $@ || \ touch $@ gtvargetpointernum.f90: gtvargetpointernum.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< --gtvarget_dim=$(MAXDIM) > $@ || \ touch $@ gtvargetnum.f90: gtvargetnum.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< > $@ || \ touch $@ anvarputnum.f90: anvarputnum.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< > $@ || \ touch $@ gtvarputnum.f90: gtvarputnum.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< --gtvarput_dim=$(MAXDIM) > $@ || \ touch $@ dc_present.f90: dc_present.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< > $@ || \ touch $@ historyget.f90: historyget.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< --histget_dim=$(MAXDIM) > $@ || \ touch $@ gt4_history.f90: gt4_history.rb2f90 $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< --histput_dim=$(MAXDIM) --histget_dim=$(MAXDIM) > $@ || \ touch $@ clean: -$(RM) $(MODS) *.o $(TARGET) work.pc* clean.rb2f90: -$(RM) $(RB2F90) depend: f90depend.rb Makefile $(RUBY) -v > /dev/null 2>&1 && \ $(RUBY) $< -q *.f90 > $@ || \ touch $@ include depend tags: $(OBJS:.o=.f90) @if $(PERL) -v > /dev/null 2>&1 ; then \ echo $(PERL) f90tags $(OBJS:.o=.f90) ;\ $(PERL) f90tags $(OBJS:.o=.f90) ;\ fi Makefile.win: Makefile depend $(RUBY) gnumakefileparser-test.rb $(RUBY) gen-Makefile.win.rb --input $(shell echo $+ | sed -e 's/ /,/') --output $@